急!关于动态弹出式菜单的一个问题

liul17 2007-08-27 11:00:48
我需要根据鼠标右键点击到的不同对像(区域)显示不同的菜单项(包括:有条件的显示弹出菜单),但我加了后,不管什么时候他都弹出,代码如下:
下面是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));
}


如何能实现这个功能? 谢谢!
...全文
114 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
liul17 2007-08-27
  • 打赏
  • 举报
回复
肯定不会啊!! 我的感觉是菜单被加载一次后就已经绑定到窗体了,即使你不 show 它一样可以右键点出来

linuxpgy 2007-08-27
  • 打赏
  • 举报
回复
IsValid 始终为true吧?

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧