繁体   English   中英

如何在上下文菜单项上放置事件?

[英]How can i put an event on a context menu item?

我在需要一些选项卡的程序上工作。我不想放按钮来添加/删除选项卡,我的想法是当我按右键时添加上下文菜单,但这给我一个错误。 这是代码:

private void tabControl1_MouseDown(object sender, MouseEventArgs e)
    {
        if (context_add_remove_control < 1)
        {
            var add_tab = tab_options.MenuItems.Add("Add tab");
            var remove_tab = tab_options.MenuItems.Add("Remove tab");
            add_tab.Click += new EventHandler (Add_tab_click());
        }
        tabControl1.ContextMenu = tab_options;
    }

    private EventHandler Add_tab_click()
    {

    }

但是Add_tab_click方法给我一个错误:

'Form1.Add_tab_click':并非所有代码路径都返回值

这是什么意思

private EventHandler Add_tab_click()

编译器期望Add_tab_click()返回一个EventHandler因为您的方法被标记为返回一个(而不是void)。 但是,在这种情况下,该方法应该返回void,因为EventHandler委托期望一个带有两个参数(一个对象和EventArgs)的方法并返回void。 因此,您应该将代码更改为:

private void Add_tab_click(object sender, EventArgs e)

并更改为: add_tab.Click += new EventHandler (Add_tab_click());

至:

add_tab.Click += Add_tab_click;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM