Menu.CloneMenu 方法

复制作为参数被传递到当前 MenuMenu

**命名空间:**System.Windows.Forms
**程序集:**System.Windows.Forms(在 system.windows.forms.dll 中)

语法

声明
Protected Friend Sub CloneMenu ( _
    menuSrc As Menu _
)
用法
Dim menuSrc As Menu

Me.CloneMenu(menuSrc)
protected internal void CloneMenu (
    Menu menuSrc
)
protected public:
void CloneMenu (
    Menu^ menuSrc
)
protected void CloneMenu (
    Menu menuSrc
)
protected internal function CloneMenu (
    menuSrc : Menu
)

参数

  • menuSrc
    要复制的 Menu

备注

该方法将 MenuItem 对象(存储在传递到 menuSrc 的 Menu 中)的整个列表复制到当前菜单。可以在派生类中使用该方法克隆 MenuItem 对象。然后,从 Menu 派生的其他类(如 MainMenuContextMenuMenuItem)可以重用这些对象。

示例

此示例创建一个主菜单 mainMenu1,该菜单包含三个菜单项:FileEditView。然后,它使用 CloneMenu 方法将 mainMenu1 复制到 mainMenu2 中。随后将克隆的菜单分配给该窗体并加以显示。此程序要求您已创建了一个名为 Form1Form

Private Sub CloneMyMainMenu()
   ' Create the main menu.
   Dim mainMenu1 As New MainMenu()

   ' Create the menu items to add.
   Dim menuItem1 As New MenuItem()
   Dim menuItem2 As New MenuItem()
   Dim menuItem3 As New MenuItem()

   ' Set the caption for the menu items.
   menuItem1.Text = "File"
   menuItem2.Text = "Edit"
   menuItem3.Text = "View"

   ' Add the menu item to mainMenu1.
   mainMenu1.MenuItems.Add(menuItem1)
   mainMenu1.MenuItems.Add(menuItem2)
   mainMenu1.MenuItems.Add(menuItem3)

   ' Clone the mainMenu1 and name it mainMenu2.
   Dim mainMenu2 As MainMenu = mainMenu1.CloneMenu()

   ' Assign mainMenu2 to the form.
   Menu = mainMenu2
End Sub 'CloneMyMainMenu
private void CloneMyMainMenu()
{
    // Create the main menu.
    MainMenu mainMenu1 = new MainMenu();

    // Create the menu items to add.
    MenuItem menuItem1 = new MenuItem();
    MenuItem menuItem2 = new MenuItem();
    MenuItem menuItem3 = new MenuItem();
   
    // Set the caption for the menu items.
    menuItem1.Text = "File";
    menuItem2.Text = "Edit";
    menuItem3.Text = "View";

    // Add the menu item to mainMenu1.
    mainMenu1.MenuItems.Add(menuItem1);
    mainMenu1.MenuItems.Add(menuItem2);
    mainMenu1.MenuItems.Add(menuItem3);

    // Clone the mainMenu1 and name it mainMenu2.
    MainMenu mainMenu2 = mainMenu1.CloneMenu();
    
    // Assign mainMenu2 to the form.
    Menu = mainMenu2;
}
void CloneMyMainMenu()
{
   // Create the main menu.
   MainMenu^ mainMenu1 = gcnew MainMenu;

   // Create the menu items to add.
   MenuItem^ menuItem1 = gcnew MenuItem;
   MenuItem^ menuItem2 = gcnew MenuItem;
   MenuItem^ menuItem3 = gcnew MenuItem;

   // Set the caption for the menu items.
   menuItem1->Text = "File";
   menuItem2->Text = "Edit";
   menuItem3->Text = "View";

   // Add the menu item to mainMenu1.
   mainMenu1->MenuItems->Add( menuItem1 );
   mainMenu1->MenuItems->Add( menuItem2 );
   mainMenu1->MenuItems->Add( menuItem3 );

   // Clone the mainMenu1 and name it mainMenu2.
   MainMenu^ mainMenu2 = mainMenu1->CloneMenu();

   // Assign mainMenu2 to the form.
   Menu = mainMenu2;
}
private void CloneMyMainMenu()
{
    // Create the main menu.
    MainMenu mainMenu1 = new MainMenu();

    // Create the menu items to add.
    MenuItem menuItem1 = new MenuItem();
    MenuItem menuItem2 = new MenuItem();
    MenuItem menuItem3 = new MenuItem();

    // Set the caption for the menu items.
    menuItem1.set_Text("File");
    menuItem2.set_Text("Edit");
    menuItem3.set_Text("View");

    // Add the menu item to mainMenu1.
    mainMenu1.get_MenuItems().Add(menuItem1);
    mainMenu1.get_MenuItems().Add(menuItem2);
    mainMenu1.get_MenuItems().Add(menuItem3);

    // Clone the mainMenu1 and name it mainMenu2.
    MainMenu mainMenu2 = mainMenu1.CloneMenu();

    // Assign mainMenu2 to the form.
    set_Menu(mainMenu2);
} //CloneMyMainMenu

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

Menu 类
Menu 成员
System.Windows.Forms 命名空间
MenuItem
MainMenu 类