2011-12-21 53 views
3

我正在使用WinForms,我已经尝试过TreeView,它几乎有到MenuStrip的simliar结构,只有一件事我无法弄清楚如何插入一个ToolStripMenuItem作为子项目。反正是有可能喜欢:将ToolMenuStripItem添加到MenuStrip的specfic项目?

//There is no Items.Add() after you find the toolstripitem array 
MenuStrip.Items.Find("key").Items.Add(). 
//Same thing 
ToolStripMenuItem.Items.Find("key").Items.Add(). 

我已经试过几乎所有的东西,并没有什么干这种事情,也许有人可以帮助我。

回答

6

试试看看这个代码。

 var item = menuStrip1.Items["toolStripMenuItem1"]; 

     ToolStripMenuItem newItem = new ToolStripMenuItem("my new item"); 
     var index = menuStrip1.Items.IndexOf(item); 
     menuStrip1.Items.Insert(index + 1, newItem); 

编辑:用新代码更新。

编辑2:此代码将添加新的菜单项作为下拉项。

 ToolStripMenuItem item = (ToolStripMenuItem)menuStrip1.Items["toolStripMenuItem1"]; 

     ToolStripMenuItem newItem = new ToolStripMenuItem("my new item"); 
     item.DropDownItems.Add(newItem); 
+0

我的所有ToolStripMenuItem都返回MergeIndex值-1,为什么? – 2011-12-21 14:14:42

+0

我更新了代码。试试看。 – 2011-12-21 14:26:27

+0

你是否试过这段代码,它没有做任何形式的事情,只是增加了一个不在里面而是在它旁边的项目。 – 2011-12-21 14:41:21