我對此代碼有問題。你可以找到所有類別here。Winform應用程序中的MDIparent返回對象引用未設置爲對象的實例
如果我啓動應用程序,我想開一個新的窗體我收到此錯誤:
NullReferenceException : Object reference not set to an instance of an object.
主要的應用程序設置爲isMDIcontainer = true;
現在我在這部分代碼收到錯誤:
private void PluginClick(object sender, EventArgs e)
{
ToolStripMenuItem menu = (ToolStripMenuItem)sender;
Plugin.PluginForm form = ((PluginInfo)menu.Tag).CreateInstance();
form.MdiParent = this; // Here is thrown the error
form.Show();
}
Plugin.PluginForm
只是一個擴展形式。這是CreateIstance()
方法:
public PluginForm CreateInstance()
{
if (!File.Exists(FileName))
return null;
Assembly ass = Assembly.LoadFile(FileName);
foreach (Type type in ass.GetTypes())
{
if (type.BaseType == typeof(PluginForm))
{
return (PluginForm)Activator.CreateInstance(type);
}
}
return null;
}
同樣sebsite有人說,這個錯誤可能會以這種方式來解決:
You must declare property system.window.form parentForm in interface
,但我不知道如何。
是的,問題是已經有一個安裝的插件,路徑與我的不同。 – Jasper