2011-12-21 80 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