0
(cms.Items[6] as ToolStripMenuItem).DropDownItems.Add("Close program",null, new EventHandler(CloseProgram_Click));
(cms.Items[6] as ToolStripMenuItem).DropDownItems.Add("Show message", null, new EventHandler(ShowMessage_Click));
(cms.Items[6] as ToolStripMenuItem).DropDownItems.Add("-");
(cms.Items[6] as ToolStripMenuItem).DropDownItems.Add("Do nothing", null, new EventHandler(DoNothing_Click));

private void CloseProgram_Click(object sender, EventArgs e)
{
    // I want mark this menuItem on dropdownItem
}

当我选择 menuItem 时,我希望它被选中。

像这样。

像这样。

4

1 回答 1

0

将参数强制sender转换为ToolStripMenuItem,然后您可以设置其Checked属性。

private void CloseProgram_Click(object sender, EventArgs e)
{
    // I want mark this menuItem on dropdownItem
    ToolStripMenuItem menuitem = sender as ToolStripMenuItem;
        if (menuitem != null)
            menuitem.Checked = true;
} 

您可以Checked像这样获取每个菜单项的状态

bool ischecked = (programToolStripMenuItem.DropDownItems[0] as ToolStripMenuItem).Checked;

传递正确的索引(例如 0),以获取您想要的菜单项。

于 2014-11-30T04:49:44.147 回答