0
我有一個問題,爲TreeView動態創建MenuItems:這裏是我使用的(簡化)代碼。關於Visual C#MenuItem:NullReference來自哪裏?
public class CTMProvider
{
private CTM myObject;
//internal CTMManager manager;
//internal string IEEEAddress;
//internal System.Net.Endpoint endpoint;
public CTMProvider()
{
myObject = new CTM(this);
}
void Disconnect(object sender, EventArgs ea) {
//Function disconnects a tcp link
}
}
public class CTM : System.Windows.Forms.TreeNode
{
public CTM(CTMProvider provider)
{
//this.provider = provider;
//this.manager = provider.manager;
//this.IEEEAddress = provider.IEEEAddress;
//this.endpoint = provider.state._conn.RemoteEndPoint;
this.Text = String.Format("CTM: {0} {0}", IEEEAddress, ((System.Net.IPEndPoint)endpoint).ToString());
MenuItem meni = new MenuItem("Disconnect", new System.EventHandler(this.provider.Disconnect)));
this.ContextMenu.MenuItems.Add(meni); // <-----
}
}
該代碼總是會觸發一個NullReferenceException當我嘗試和我的菜單項添加到列表的MenuItems。 任何想法?
stacktrace .....? – 2010-05-31 08:46:57
請發佈*真實*代碼。上面的代碼不能編譯。你的簡化可以很好地掩蓋真正的問題。哦,並刪除'try' ...'catch',這是完全沒有必要的。 – 2010-05-31 08:47:00
對不起,我試圖在那裏稍微簡化一下。 – Thomas 2010-06-01 04:28:13