我想以編程方式用Separator將我的menuItem中的項目集合中的每個組分開。Group MenuItem's Items
我知道我可以使用this.myMenuItem.Items.Add(new ToolStripSeparator());
但是這對我來說不是一個選項,因爲myMenuItem的內容是隨時創建的,我最終可以以空組爲例。所以我將有兩個ToolStripSeparator,它們之間沒有項目。
就像這個例子。如果conditionA
爲假或condition1A
和conditionA2
爲假,我將得到兩個連續的分隔符。
如果我在第一個或第二個嵌套if內移動myMenuItem.Items.Add(new ToolStripSeparator());
,我可以在同一組內獲得分隔符。
// Add group A of items
myMenuItem.Items.Add(new ToolStripSeparator());
If(conditionA)
{
If(conditionA1)
myMenuItem.Items.Add("group A: item 1");
If(conditionA2)
myMenuItem.Items.Add("group A: item 2");
}
// Add group B of items
myMenuItem.Items.Add(new ToolStripSeparator());
If(conditionB)
{
If(conditionB1)
myMenuItem.Items.Add("group B: item 1");
If(conditionB2)
myMenuItem.Items.Add("group B: item 2");
}
// Add group C of items
myMenuItem.Items.Add(new ToolStripSeparator());
If(conditionC)
{
If(conditionC1)
myMenuItem.Items.Add("group C: item 1");
If(conditionC2)
myMenuItem.Items.Add("group C: item 2");
}
我徘徊,如果有一種簡單的方法(如標籤我們組選件),我可以動態創建的項目使用,因此菜單項可以決定把這個項目,我們是否需要一個分離器或沒有。 我知道我可以結合條件或計數添加項目,所以我可以決定是否添加分隔符,但是想法是讓添加的項目自己決定是否添加或不添加。所以當啓動一個Item時,我無法確定是否必須添加分隔符。
我正在使用Windows.Forms.ToolStripMenuItem控件。
你最終會得到一個空的組?顯示添加菜單項的代碼。 – LarsTech
@LarsTech我提供了一個代碼示例 – Mhd
不,沒有內置的方法來默認添加分隔符。任何使用添加或插入分隔符的方法都會要求您檢查條件或計算添加的項目等。發佈的答案是一種實現方法。不要回避它。 – LarsTech