2010-09-02 164 views
8

比方說,我有一個WinForm,它有一個菜單條。假設這個菜單條的其中一個項目被命名爲Cars。以編程方式將項目添加到菜單條?

每當我打開我的WinForm,我想添加一個子表項下的汽車下的每一輛車。

這可能與代碼有關嗎?

回答

15
string[] cars = new string[]{"Volvo", "SAAB"}; 

foreach (var car in cars) 
{ 
    ToolStripItem subItem = new ToolStripMenuItem(car); 
    carsToolStripMenuItem.DropDownItems.Add(subItem); 
} 

注:如果添加一個事件子項目,請確保您退訂該事件,如果你反覆刷新列表,否則就會有內存泄漏。

注2:如果你有很多項目,你應該使用DropDownItems.AddRange,而不是性能的原因。

+1

出於某種原因,DropDownItems不是intellitext的可用選項...任何想法? – sooprise 2010-09-03 13:46:08

+0

@Soo,你的Cars菜單項是什麼類型?當我在設計器中創建菜單時,我的汽車菜單是一個ToolStripMenuItem。 – 2010-09-03 19:30:35

+0

另請參閱此處的示例,瞭解如何連接事件https://stackoverflow.com/questions/1608102/how-to-add-things-to-a-menustrip-programatically – 2017-06-15 01:04:50

相關問題