动态添加项目到上下文菜单&设置单击操作

时间:2008-10-22 11:37:30

标签: c# .net contextmenu

我有一个每5秒重新生成一次的字符串列表。我想创建一个上下文菜单,并使用此列表动态设置其项目。 问题是我甚至不知道如何做到这一点并管理生成的每个项目的Click操作(应该使用与不同参数DoSomething(“item_name”)相同的方法)。

我该怎么做?

感谢您的时间。 最好的问候。

2 个答案:

答案 0 :(得分:21)

因此,您可以使用以下选项清除上下文菜单中的项目:

myContextMenuStrip.Items.Clear();

您可以通过以下方式添加项目:

myContextMenuStrip.Items.Add(myString);

上下文菜单中有一个ItemClicked事件。您的处理程序可能如下所示:

private void myContextMenuStrip_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
    DoSomething(e.ClickedItem.Text);
}

似乎对我有用。如果我误解了你的问题,请告诉我。

答案 1 :(得分:0)

使用ToolStripMenuItem对象的另一种选择:

//////////// Create a new "ToolStripMenuItem" object:
ToolStripMenuItem newMenuItem= new ToolStripMenuItem();

//////////// Set a name, for identification purposes:
newMenuItem.Name = "nameOfMenuItem";

//////////// Sets the text that will appear in the new context menu option:
newMenuItem.Text = "This is another option!";

//////////// Add this new item to your context menu:
myContextMenuStrip.Items.Add(newMenuItem);


ItemClicked的{​​{1}}事件中,您可以查看已选择的选项(基于菜单项的名称属性

myContextMenuStrip