急!关于动态弹出式菜单的一个问题
我需要根据鼠标右键点击到的不同对像(区域)显示不同的菜单项(包括:有条件的显示弹出菜单),但我加了后,不管什么时候他都弹出,代码如下:
下面是form_load时的代码:
MenuItem mi_1 = new MenuItem("设为一句", new EventHandler(memuPopupItem_1));
mi_1.DefaultItem = true;
mi_1.Shortcut = Shortcut.CtrlQ;
mi_1.ShowShortcut = true;
MenuItem mi_2 = new MenuItem("输入文本", new EventHandler(memuPopupItem_2));
mi_2.Shortcut = Shortcut.CtrlW;
mi_2.ShowShortcut = true;
tlContent.ContextMenu = new ContextMenu(new MenuItem[] { mi_1, mi_2 });
下面是mouse_down时的代码:
if(IsValid){ //IsValid是一个bool变量,表示点击的区域是否合法,合法的话才显示出菜单
this.ContextMenu.Show(this, new Point(e.Location.X, e.Location.Y));
}
如何能实现这个功能? 谢谢!