Menu.MergeMenu(Menu) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
1 つのメニューの MenuItem オブジェクトを現在のメニューとマージします。
public:
virtual void MergeMenu(System::Windows::Forms::Menu ^ menuSrc);
public virtual void MergeMenu(System.Windows.Forms.Menu menuSrc);
abstract member MergeMenu : System.Windows.Forms.Menu -> unit
override this.MergeMenu : System.Windows.Forms.Menu -> unit
Public Overridable Sub MergeMenu (menuSrc As Menu)
パラメーター
例外
メニューをそれ自体とマージしようとしました。
例
この例では、 mainMenu1 と mainMenu2の 2 つのメニューを作成します。 最初のメニューには 1 つの MenuItem、 File、2 番目のメニューには 1 つの MenuItem ( Edit) が含まれています。
MergeMenuメソッドを使用して、mainMenu2をmainMenu1にマージします。 表示されると、 mainMenu1 には、 File と Editの 2 つのメニュー項目が含まれます。 この例では、Formという名前のForm1を作成している必要があります。
private:
void InitializeMyMainMenu()
{
// Create the 2 menus and the menu items to add.
MainMenu^ mainMenu1 = gcnew MainMenu;
MainMenu^ mainMenu2 = gcnew MainMenu;
MenuItem^ menuItem1 = gcnew MenuItem;
MenuItem^ menuItem2 = gcnew MenuItem;
// Set the caption for the menu items.
menuItem1->Text = "File";
menuItem2->Text = "Edit";
// Add a menu item to each menu for displaying.
mainMenu1->MenuItems->Add( menuItem1 );
mainMenu2->MenuItems->Add( menuItem2 );
// Merge mainMenu2 with mainMenu1
mainMenu1->MergeMenu( mainMenu2 );
// Assign mainMenu1 to the form.
this->Menu = mainMenu1;
}
private void InitializeMyMainMenu()
{
// Create the 2 menus and the menu items to add.
MainMenu mainMenu1 = new MainMenu();
MainMenu mainMenu2 = new MainMenu();
MenuItem menuItem1 = new MenuItem();
MenuItem menuItem2 = new MenuItem();
// Set the caption for the menu items.
menuItem1.Text = "File";
menuItem2.Text = "Edit";
// Add a menu item to each menu for displaying.
mainMenu1.MenuItems.Add(menuItem1);
mainMenu2.MenuItems.Add(menuItem2);
// Merge mainMenu2 with mainMenu1
mainMenu1.MergeMenu(mainMenu2);
// Assign mainMenu1 to the form.
this.Menu = mainMenu1;
}
Private Sub InitializeMyMainMenu()
' Create the 2 menus and the menu items to add.
Dim mainMenu1 As New MainMenu()
Dim mainMenu2 As New MainMenu()
Dim menuItem1 As New MenuItem()
Dim menuItem2 As New MenuItem()
' Set the caption for the menu items.
menuItem1.Text = "File"
menuItem2.Text = "Edit"
' Add a menu item to each menu for displaying.
mainMenu1.MenuItems.Add(menuItem1)
mainMenu2.MenuItems.Add(menuItem2)
' Merge mainMenu2 with mainMenu1
mainMenu1.MergeMenu(mainMenu2)
' Assign mainMenu1 to the form.
Me.Menu = mainMenu1
End Sub
注釈
このメソッドは、1 つのメニューから現在のメニュー MenuItem オブジェクトをマージします。 MenuItem オブジェクトは、 MenuItem.MergeType プロパティと MenuItem.MergeOrder プロパティの値に従ってマージされます。
メニューのマージは、通常、複数ドキュメント インターフェイス (MDI) 親フォームのメニューをアクティブな MDI 子フォームのメニューとマージするために行われます。 これは、.NET Framework 共通言語ランタイムによって自動的に実行されます。 たとえば、MDI 親フォームにファイルを処理するための一連のメニューが含まれており、MDI 子フォームにもファイル関連のメニュー項目がある場合、MDI 親フォームに子フォームが表示されると、メニュー セットは自動的に 1 つのファイル メニュー セットにマージされます。
MDI アプリケーションに含まれていない 2 つのメニュー構造をマージする場合は、 MergeMenu メソッドを使用できます。 この実装は、 MainMenu クラスまたは ContextMenu クラスによって呼び出され、 Menuから派生する 2 つ以上のオブジェクトをマージできます。
2 つの MenuItem オブジェクトをマージするには、 MenuItem.MergeMenu メソッドを使用します。