web-dev-qa-db-ja.com

WinForms ContextMenuにセパレータを追加する方法は?

私のコントロールの中には、次のものがあります。

ContextMenu = new ContextMenu();
ContextMenu.MenuItems.Add(new MenuItem("&Add Item", onAddSpeaker));
ContextMenu.MenuItems.Add(new MenuItem("&Edit Item", onEditSpeaker));
ContextMenu.MenuItems.Add(new MenuItem("&Delete Item", onDeleteSpeaker));
ContextMenu.MenuItems.Add( ??? );
ContextMenu.MenuItems.Add(new MenuItem("Cancel"));

このContextMenuに分離線を追加する方法は?

96
Adam Pierce

私はそれがただのダッシュだと信じています:

ContextMenu.MenuItems.Add("-");
211
SqlRyan

これはダッシュと同じように機能します。WinformsはダッシュをToolStripSeparatorに変換すると思われます。私は、この解決策はコードを維持しなければならない人にとってより明白だと思う。

yourContextMenu.Items.Add(new ToolStripSeparator());
46
Gabriel

WPFの場合:

ContextMenu.MenuItems.Add(new Separator());
11
al2suarez

Designerを使用している場合は、メニュー項目に名前を付けるのと同じ方法で、テキストとして単一のハイフン「-」を配置します。 Enterキーを押すと、セパレーターが作成されます。

7
Aziz

テキストプロパティをハイフンに設定します。

3
shahkalpesh

おそらくVisual Studioの以降のバージョンでは、彼らはこれをより簡単にしたでしょう。 VS 2012を使用しています。フォームデザイナを使用してセパレータを追加できます。 1)MenuStripを選択/作成します。 2)[ここに入力]で、マウスを右クリックします。 3)[挿入]を選択します。 4)「セパレータ」を選択します。 5)新しいセパレータを上に配置するテキストにドラッグします。できた.

0
JimMoore