2009-05-12 4 views
16

MenuStriのサブメニューのマージン(おそらくイメージとチェックボックスの余白)を削除する方法はありますか? MSDN articleには、コンテキストメニューからそれを削除する方法が説明されています。それは、私はMenuStripで同じ方法を行う必要がありますが、MenuStripにはShowImageMarginもShowCheckMarginもありませんと書かれています。たぶん私は何かが欠けているでしょう。手伝ってくれますか?MenuStripサブメニュー余白を削除するには?

+0

あなたは、画像を使用していませんサブメニューに小切手や画像が含まれている場合にのみマージンを表示したいのですか? –

+0

私は画像を使用していません – kyrisu

答えて

31

"ContextMenuStrip"(これはMSDN articleで使用されています)を使用する代わりに、 "ToolStripDropDownMenu"を使用する必要があります。この方法:たとえば

((ToolStripDropDownMenu)noMargins.DropDown).ShowImageMargin = false; 

、あなたは、フォームの初期化ルーチンにこのコードを追加し、「menuStrip1」と呼ばれるあなたのメニューバーからすべての画像の余白を削除する場合:

// Removing image margins (space for icons on left) from menubar items: 
foreach (ToolStripMenuItem menuItem in menuStrip1.Items) 
    ((ToolStripDropDownMenu)menuItem.DropDown).ShowImageMargin = false; 
+0

これはとてもうまく動作し、使いやすいです。ありがとう! – bgmCoder

関連する問題