Menu.MenuItemCollection.Add 方法

定义

将新 MenuItem 添加到集合中。

重载

Add(String)

将具有指定标题的新 MenuItem 添加到当前菜单的末尾。

Add(MenuItem)

将以前创建的 MenuItem 添加到当前菜单的末尾。

Add(Int32, MenuItem)

在菜单项集合中的指定索引位置添加以前创建的 MenuItem

Add(String, EventHandler)

将具有指定标题和 MenuItem 事件的指定事件处理程序的新 Click 添加到当前菜单的末尾。

Add(String, MenuItem[])

将具有指定标题、MenuItem 事件处理程序和项的新 Click 添加到该菜单的末尾。

Add(String)

将具有指定标题的新 MenuItem 添加到当前菜单的末尾。

public:
 virtual System::Windows::Forms::MenuItem ^ Add(System::String ^ caption);
public virtual System.Windows.Forms.MenuItem Add (string caption);
abstract member Add : string -> System.Windows.Forms.MenuItem
override this.Add : string -> System.Windows.Forms.MenuItem
Public Overridable Function Add (caption As String) As MenuItem

参数

caption
String

菜单项的标题。

返回

表示将添加到集合的菜单项的 MenuItem

示例

下面的代码示例使用派生类MainMenu创建一个main菜单 ,该菜单mainMenu1将两MenuItem个 对象添加到其MenuItems集合中。 然后,代码将 mainMenu1Menu 分配给 的 Form属性。 此示例要求此示例中定义的代码位于 窗体中的 中。

private:
   void InitializeMyMainMenu()
   {
      // Create the MainMenu.
      MainMenu^ mainMenu1 = gcnew MainMenu;
      
      /* Use the MenuItems property to call the Add method
         to add two new MenuItem objects to the MainMenu. */
      mainMenu1->MenuItems->Add( "&File" );
      mainMenu1->MenuItems->Add( "&Edit" );
      
      // Assign mainMenu1 to the form.
      this->Menu = mainMenu1;
   }
private void InitializeMyMainMenu()
{
   // Create the MainMenu.
   MainMenu mainMenu1 = new MainMenu();
   
   /* Use the MenuItems property to call the Add method
      to add two new MenuItem objects to the MainMenu. */
   mainMenu1.MenuItems.Add ("&File");
   mainMenu1.MenuItems.Add ("&Edit");

   // Assign mainMenu1 to the form.
   this.Menu = mainMenu1;
}
Private Sub InitializeMyMainMenu()
    ' Create the MainMenu.
    Dim mainMenu1 As New MainMenu()
       
    ' Use the MenuItems property to call the Add method
    ' to add two new MenuItem objects to the MainMenu. 
    mainMenu1.MenuItems.Add("&File")
    mainMenu1.MenuItems.Add("&Edit")
       
    ' Assign mainMenu1 to the form.
    Me.Menu = mainMenu1
End Sub

注解

MenuItem 次只能包含在一个菜单中,并且不能多次添加到同一菜单中。 若要在多个菜单中重用 MenuItem ,请使用 CloneMenu 类的 MenuItem 方法。 若要删除 MenuItem 之前添加的 ,请使用 Remove 方法。

另请参阅

适用于

Add(MenuItem)

将以前创建的 MenuItem 添加到当前菜单的末尾。

public:
 virtual int Add(System::Windows::Forms::MenuItem ^ item);
public virtual int Add (System.Windows.Forms.MenuItem item);
abstract member Add : System.Windows.Forms.MenuItem -> int
override this.Add : System.Windows.Forms.MenuItem -> int
Public Overridable Function Add (item As MenuItem) As Integer

参数

item
MenuItem

要添加的 MenuItem

返回

从零开始的索引,该项存储在集合中的此索引位置。

示例

下面的代码示例创建派生类 的实例, MainMenu并将 添加到 MenuItem 其 对象的集合中 MenuItem 。 此示例要求此示例中定义的方法位于窗体的 类中,并由该窗体类中的方法调用。

private:
   void InitializeMyMainMenu()
   {
      // Create the MainMenu and the MenuItem to add.
      MainMenu^ mainMenu1 = gcnew MainMenu;
      MenuItem^ menuItem1 = gcnew MenuItem( "&File" );
      
      /* Use the MenuItems property to call the Add method
         to add the MenuItem to the MainMenu menu item collection. */
      mainMenu1->MenuItems->Add( menuItem1 );
      
      // Assign mainMenu1 to the form.
      this->Menu = mainMenu1;
   }
private void InitializeMyMainMenu()
{
   // Create the MainMenu and the MenuItem to add.
   MainMenu mainMenu1 = new MainMenu();
   MenuItem menuItem1 = new MenuItem("&File");
   
   /* Use the MenuItems property to call the Add method
      to add the MenuItem to the MainMenu menu item collection. */
   mainMenu1.MenuItems.Add (menuItem1);

   // Assign mainMenu1 to the form.
   this.Menu = mainMenu1;
}
Private Sub InitializeMyMainMenu()
    ' Create the MainMenu and the MenuItem to add.
    Dim mainMenu1 As New MainMenu()
    Dim menuItem1 As New MenuItem("&File")
       
    ' Use the MenuItems property to call the Add method
    ' to add the MenuItem to the MainMenu menu item collection. 
    mainMenu1.MenuItems.Add(menuItem1)
       
    ' Assign mainMenu1 to the form.
    Me.Menu = mainMenu1
End Sub

注解

MenuItem 次只能包含在一个菜单中,并且不能多次添加到同一菜单中。 若要在多个菜单中重用 MenuItem ,请使用 CloneMenu 类的 MenuItem 方法。 若要删除 MenuItem 之前添加的 ,请使用 Remove 方法。

此版本的 Add 方法允许您将以前创建 MenuItem 的对象添加到菜单项集合的末尾。

另请参阅

适用于

Add(Int32, MenuItem)

在菜单项集合中的指定索引位置添加以前创建的 MenuItem

public:
 virtual int Add(int index, System::Windows::Forms::MenuItem ^ item);
public virtual int Add (int index, System.Windows.Forms.MenuItem item);
abstract member Add : int * System.Windows.Forms.MenuItem -> int
override this.Add : int * System.Windows.Forms.MenuItem -> int
Public Overridable Function Add (index As Integer, item As MenuItem) As Integer

参数

index
Int32

添加新项的位置。

item
MenuItem

要添加的 MenuItem

返回

从零开始的索引,该项存储在集合中的此索引位置。

例外

所添加的 MenuItem 已经在使用。

index 参数中所提供的索引大于集合的大小。

示例

下面的代码示例创建派生类 的实例, MainMenu并将 对象 MenuItem 添加到菜单项集合 MenuItem 中特定位置的 对象的集合中。 此示例要求此示例中定义的方法位于窗体的 类中,并由该窗体类中的方法调用。

private:
   void InitializeMyMainMenu()
   {
      // Create the MainMenu and the MenuItem to add.
      MainMenu^ mainMenu1 = gcnew MainMenu;
      MenuItem^ menuItem1 = gcnew MenuItem( "&File" );
      
      /* Use the MenuItems property to call the Add method
         to add the MenuItem to mainMenu1 at specific index. */
      mainMenu1->MenuItems->Add( 0, menuItem1 );
      
      // Assign mainMenu1 to the form.
      this->Menu = mainMenu1;
   }
private void InitializeMyMainMenu()
{
   // Create the MainMenu and the MenuItem to add.
   MainMenu mainMenu1 = new MainMenu();
   MenuItem menuItem1 = new MenuItem("&File");
   
   /* Use the MenuItems property to call the Add method
      to add the MenuItem to mainMenu1 at specific index. */
   mainMenu1.MenuItems.Add (0, menuItem1);

   // Assign mainMenu1 to the form.
   this.Menu = mainMenu1;
}
Private Sub InitializeMyMainMenu()
    ' Create the MainMenu and the MenuItem to add.
    Dim mainMenu1 As New MainMenu()
    Dim menuItem1 As New MenuItem("&File")
       
    ' Use the MenuItems property to call the Add method
    ' to add the MenuItem to mainMenu1 at specific index. 
    mainMenu1.MenuItems.Add(0, menuItem1)
       
    ' Assign mainMenu1 to the form.
    Me.Menu = mainMenu1
End Sub

注解

MenuItem 次只能包含在一个菜单中,并且不能多次添加到同一菜单中。 若要在多个菜单中重用 MenuItem ,请使用 CloneMenu 类的 MenuItem 方法。 若要删除 MenuItem 之前添加的 ,请使用 Remove 方法。

此版本的 Add 方法允许您将以前创建 MenuItem 的对象添加到集合中的特定索引位置。 当前位于该索引处的任何 MenuItem 对象以及该索引后的所有 MenuItem 对象都移动到集合中的下一个最低索引。

另请参阅

适用于

Add(String, EventHandler)

将具有指定标题和 MenuItem 事件的指定事件处理程序的新 Click 添加到当前菜单的末尾。

public:
 virtual System::Windows::Forms::MenuItem ^ Add(System::String ^ caption, EventHandler ^ onClick);
public virtual System.Windows.Forms.MenuItem Add (string caption, EventHandler onClick);
abstract member Add : string * EventHandler -> System.Windows.Forms.MenuItem
override this.Add : string * EventHandler -> System.Windows.Forms.MenuItem
Public Overridable Function Add (caption As String, onClick As EventHandler) As MenuItem

参数

caption
String

菜单项的标题。

onClick
EventHandler

表示事件处理程序的 EventHandler,当该用户单击该菜单项或某个用户按该菜单项的加速键或快捷键时将调用该处理程序。

返回

表示将添加到集合的菜单项的 MenuItem

示例

下面的代码示例使用派生类MainMenu创建一个main菜单 ,该菜单mainMenu1将两MenuItem个 对象添加到其MenuItems集合中。 代码使用此版本的 Add 方法为 Click 添加到集合中的第二个菜单项的 事件定义事件处理程序。 然后,代码将 mainMenu1Menu 分配给 的 Form属性。 此示例要求此示例中定义的代码位于窗体中。

private:
   void InitializeMyMainMenu()
   {
      // Create the MainMenu.
      MainMenu^ mainMenu1 = gcnew MainMenu;
      
      /* Use the MenuItems property to call the Add method
         to add two new MenuItem objects to the MainMenu. */
      mainMenu1->MenuItems->Add( "&File" );
      mainMenu1->MenuItems->Add( "&Edit", gcnew EventHandler(
         this, &Form1::menuItem2_Click ) );
      
      // Assign mainMenu1 to the form.
      this->Menu = mainMenu1;
   }

private:
   void menuItem2_Click( System::Object^ sender, System::EventArgs^ e )
   {
      // Insert code to handle Click event.
   }
private void InitializeMyMainMenu()
{
   // Create the MainMenu.
   MainMenu mainMenu1 = new MainMenu();
   
   /* Use the MenuItems property to call the Add method
      to add two new MenuItem objects to the MainMenu. */
   mainMenu1.MenuItems.Add ("&File");
   mainMenu1.MenuItems.Add ("&Edit", new EventHandler (menuItem2_Click));

   // Assign mainMenu1 to the form.
   this.Menu = mainMenu1;
}

private void menuItem2_Click(System.Object sender, System.EventArgs e)
{
   // Insert code to handle Click event.
}
Private Sub InitializeMyMainMenu()
    ' Create the MainMenu.
    Dim mainMenu1 As New MainMenu()
       
    ' Use the MenuItems property to call the Add method
    ' to add two new MenuItem objects to the MainMenu. 
    mainMenu1.MenuItems.Add("&File")
    mainMenu1.MenuItems.Add("&Edit", _
       New EventHandler(AddressOf menuItem2_Click))
       
    ' Assign mainMenu1 to the form.
    Me.Menu = mainMenu1
End Sub    
   
Private Sub menuItem2_Click(sender As System.Object, e As System.EventArgs)
    ' Insert code to handle Click event.
End Sub

注解

MenuItem 次只能包含在一个菜单中,并且不能多次添加到同一菜单中。 若要在多个菜单中重用 MenuItem ,请使用 CloneMenu 类的 MenuItem 方法。 若要删除 MenuItem 之前添加的 ,请使用 Remove 方法。

此版本的 Add 方法允许您指定菜单项的描述文字和用于处理事件的Click委托。 如果应用程序已有事件处理程序来处理事件,AddClick则可以使用此版本的 方法。

注意

对于 Click 包含子菜单项的 不会引发 MenuItem 事件。

另请参阅

适用于

Add(String, MenuItem[])

将具有指定标题、MenuItem 事件处理程序和项的新 Click 添加到该菜单的末尾。

public:
 virtual System::Windows::Forms::MenuItem ^ Add(System::String ^ caption, cli::array <System::Windows::Forms::MenuItem ^> ^ items);
public virtual System.Windows.Forms.MenuItem Add (string caption, System.Windows.Forms.MenuItem[] items);
abstract member Add : string * System.Windows.Forms.MenuItem[] -> System.Windows.Forms.MenuItem
override this.Add : string * System.Windows.Forms.MenuItem[] -> System.Windows.Forms.MenuItem
Public Overridable Function Add (caption As String, items As MenuItem()) As MenuItem

参数

caption
String

菜单项的标题。

items
MenuItem[]

MenuItem 将要包含的一组 MenuItem 对象。

返回

表示将添加到集合的菜单项的 MenuItem

注解

MenuItem 次只能包含在一个菜单中,并且不能多次添加到同一菜单中。 若要在多个菜单中重用 MenuItem ,请使用 CloneMenu 类的 MenuItem 方法。 若要删除 MenuItem 之前添加的 ,请使用 Remove 方法。

此版本的 Add 方法允许您指定菜单项的描述文字以及将处理其Click事件的委托。 如果应用程序已有事件处理程序来处理事件,AddClick则可以使用此版本的 方法。 此版本的 方法还允许您指定要添加到集合的以前创建的 MenuItem 对象的数组。 可以使用此功能重复使用已使用 CloneMenu 方法克隆的现有MenuItem对象。 items如果 参数不为空或 nullMenuItem则添加到集合的 将包含子菜单项。

注意

对于 Click 包含子菜单项的 不会引发 MenuItem 事件。

另请参阅

适用于