如何获取contextMenuStrip的ToolStripMenu项?

时间:2013-08-21 07:14:43

标签: c# contextmenustrip toolstripitem

我是C#的新手。我在设计部分添加了一个contextMenuStrip,还添加了4个不同的ToolStriptItem。其中三个是ToolStriptMenuItem,命名为successToolStripMenuItem等,其中一个是ToolStripTextBox。

我想要的是联系contextMenuStrip的所有成员。有没有办法将所有项目放入数组?

我知道有这样的代码:

ToolStripItem[] tsi = contextMenuStrip.Items.Find("successToolStripMenuItem", true);

这段代码不方便,因为只返回1个成员,但我希望将所有四个元素都放入数组中。这就是我可以轻松接触并使用它们的原因。如果我唯一的选择是使用上面的代码,我将需要再创建三个ToolStripItem数组,它们也只有一个成员。这对我来说似乎不太实际。

提前致谢

1 个答案:

答案 0 :(得分:1)

您正在寻找的代码在这里:

ToolStripItem[] tsi = new ToolStripItem[] { successToolStripMenuItem,
                                            successToolStripTextBox };

另一种方法是在不必手动添加项目的情况下执行此操作,如下所示:

ToolStripItem[] tsi = new ToolStripItem[contextMenuStrip.Items.Count];
contextMenuStrip.Items.CopyTo(tsi, 0);

但您知道,contextMenuStrip.ItemsCollection,意味着您可以像对待数组一样处理该集合中的项目。例如:

contextMenuStrip.Items[0]