簡體   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