|
分類:[C#]
お世話になります。
VS2015のC#でMDIフォームを作成しているのですが、 その親画面と子画面のメニューマージで困っています。
使用しているコントロールは メニューバーは「MenuStrip」 メニュー、サブメニューは「ToolStripMenuItem」 セパレータは、「ToolStripSeparator」 です。
親画面メニューは メニュー1 ├サブメニュー1 │ ├セパレータ1 │ ├サブメニュー2 │ ├セパレータ2 │ └サブメニュー3
子画面メニューは メニュー1 ├セパレータ1 │ ├サブメニュー2 │ ├セパレータ2 │ └サブメニュー3
となっています。
親画面、子画面でMergeActionを以下のとおり設定し、 ※メニュー1、サブメニュー1は親画面のみ
メニュー1.MergeAction = MergeAction.MatchOnly; サブメニュー1.MergeAction = MergeAction.Replace; サブメニュー2.MergeAction = MergeAction.Replace; サブメニュー3.MergeAction = MergeAction.Replace; セパレータ1.MergeAction = MergeAction.Replace; セパレータ2.MergeAction = MergeAction.Replace;
親画面の以下コントロールのVisibleをfalseにし、 ・セパレータ1 ・サブメニュー2 ・セパレータ2 ・サブメニュー3
子画面を起動すると、 メニュー1 ├サブメニュー1 │ ├セパレータ1 │ ├サブメニュー2 │ └サブメニュー3 と表示され、「セパレータ2」が表示されなくなってしまいます。
私が実現したい表示は、 メニュー1 ├サブメニュー1 │ ├セパレータ1 │ ├サブメニュー2 │ ├セパレータ2 │ └サブメニュー3 としたいです。
セパレータ2が表示されない原因、対処方法がわかる方いらっしゃいましたら、 ご教示願います。
|