1

特定の条件に基づいてメニュー項目が入力されるコンテキストメニューストリップがあります。

元:

条件1の場合:

myContextMenuStrip.Items.Clear();
myContextMenuStrip.Items.Add("Item title", null, myClickHandler);
myContextMenuStrip.Items.Add("Item Status", null, myClickHandler);
myContextMenuStrip.Items.Add("Item Variables", null, myClickHandler);

条件2:

myContextMenuStrip.Items.Clear();
myContextMenuStrip.Items.Add("Item Status", null, myClickHandler);

condition1でサブメニューをItemStatusに追加するには、次を使用します

(myContextMenuStrip.Items[1] as ToolStripMenuItem).DropDownItems.Add("Submenu1", null, new EventHandler(gridcontextsubMenu_ItemClicked));
(myContextMenuStrip.Items[1] as ToolStripMenuItem).DropDownItems.Add("Submenu2", null, new EventHandler(gridcontextsubMenu_ItemClicked));

condition2でサブメニューをItemStatusに追加するには、次を使用します

(myContextMenuStrip.Items[0] as ToolStripMenuItem).DropDownItems.Add("Submenu1", null, new EventHandler(gridcontextsubMenu_ItemClicked));
(myContextMenuStrip.Items[0] as ToolStripMenuItem).DropDownItems.Add("Submenu2", null, new EventHandler(gridcontextsubMenu_ItemClicked));

しかし、メニュー項目ItemStatusにサブメニューを追加する一般的な方法が必要です。

親切に答えを共有してください

4

1 に答える 1

2

aのItemsプロパティは、インデックス番号または名前のいずれかでインデクサーを使用できるようにするaをContextMenuStrip返します。ToolStripItemCollectionしたがって、のアイテム名を使用できますItems。例えば:

(myContextMenuStrip.Items["Item Status"] as ToolStripMenuItem).DropDownItems.Add("Submenu1", null, new EventHandler(gridcontexsubMenu_ItemClicked));
于 2012-12-06T10:20:12.350 に答える