0
I'm在飞行建设一个ContextMenu,这样菜单项Click事件处理程序不叫
readinstance = null;
ContextMenu cMenu = new ContextMenu();
for (int i = 0; i < instances.Length; i++) {
string text = String.Format("{0} - {1}", instances[i].Id, instances[i].FormName);
MenuItem item = new MenuItem(text, new EventHandler(cMenuitem_Click));
item.Tag = instances[i];
cMenu.MenuItems.Add(item);
}
cMenu.Show((Button)sender, new Point(0, 0));
cMenu.Dispose();
if (readinstance == null)
throw new Exception("Must select some instance");
和处理程序
void cMenuitem_Click(object sender, EventArgs e)
{
MenuItem item = (MenuItem)sender;
readinstance = (FormPrintingStorage)item.Tag;
}
菜单显示正常,但是当我点击了一些选项,处理程序不被调用,所以readinstance保持为空,并且抛出异常。作为一个侧面说明,当我点击任何选项时,菜单消失。 我看不出我的代码有什么问题。任何帮助将不胜感激。