简单的方法你可以从工具栏上拖个ContextMenu控件下来,并编辑好,然后把你所需要添加ContextMenu的控件的ContextMenu属性设为这个右键菜单,就可以了
要想复杂嘛,那你就看看系统自动生成的代码就会了。

解决方案 »

  1.   

    感谢您使用微软产品。除了上贴所述的方法,您也可以通过手工添写代码来实现弹出式菜单。关键的类是ContextMenu类。该类有两个构造函数,其中ContextMenu()生成一个不含任何菜单项的弹出式菜单;ContextMenu(MenuItem[] menus)生成一个包括参数中所指定的菜单项的弹出式菜单。如要给一个按钮控件button1添加弹出式菜单,可以参考以下的代码:ContextMenu Menu1=new ContextMenu(); 
    Menu1.MenuItems.Add(new MenuItem(“弹出菜单一")); 
    Menu1.MenuItems.Add(new MenuItem(“弹出菜单二")); 
    button1.ContextMenu=Menu1;ContextMenu有几个关键的属性、方法和事件,可以帮助您定制弹出式菜单,属性RightToLeft可以使菜单项从右到左对齐,属性SourceControl返回一个Control值表示当前所显示弹出菜单对应的控件。Show()方法可以使程序主动显示弹出菜单。当弹出菜单弹出时将引发一个Popup事件,你可以在该事件的响应方法中进行一些处理使弹出菜单显示前做一些操作。您还可以参考MSDN中给出的一个示例来定制弹出式菜单:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemWindowsFormsContextMenuClassTopic.asp 
    - 微软全球技术中心 VC技术支持
     
    本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款
    (http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
    为了为您创建更好的讨论环境,请参加我们的用户满意度调查
    (http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。