Menu.MenuItemCollection.AddRange(MenuItem[]) Method

Definition

Adds an array of previously created MenuItem objects to the collection.

public:
 virtual void AddRange(cli::array <System::Windows::Forms::MenuItem ^> ^ items);
public virtual void AddRange (System.Windows.Forms.MenuItem[] items);
abstract member AddRange : System.Windows.Forms.MenuItem[] -> unit
override this.AddRange : System.Windows.Forms.MenuItem[] -> unit
Public Overridable Sub AddRange (items As MenuItem())

Parameters

items
MenuItem[]

An array of MenuItem objects representing the menu items to add to the collection.

Examples

The following code example creates an array and copies the Menu.MenuItemCollection objects from two MenuItem objects into the array. The example then copies the array of MenuItem objects into the control collection for a ContextMenu named contextMenu1. This example requires that there are two MenuItem objects that contain submenu items named menuItem1 and menuItem2.

private:
   void CopyMyMenus()
   {
      // Create empty array to store MenuItem objects.
      array<MenuItem^>^ myItems = gcnew array<MenuItem^>(
         menuItem1->MenuItems->Count + menuItem2->MenuItems->Count );
      
      // Copy elements of the first MenuItem collection to array.
      menuItem1->MenuItems->CopyTo( myItems, 0 );
      // Copy elements of the second MenuItem collection, after the first set.
      menuItem2->MenuItems->CopyTo( myItems, myItems->Length );
      
      // Add the array to the menu item collection of the ContextMenu.
      contextMenu1->MenuItems->AddRange( myItems );
   }
private void CopyMyMenus()
{
   // Create empty array to store MenuItem objects.
   MenuItem[] myItems = 
      new MenuItem[menuItem1.MenuItems.Count + menuItem2.MenuItems.Count];
   
   // Copy elements of the first MenuItem collection to array.
   menuItem1.MenuItems.CopyTo(myItems, 0);
   // Copy elements of the second MenuItem collection, after the first set.
   menuItem2.MenuItems.CopyTo(myItems, myItems.Length);

   // Add the array to the menu item collection of the ContextMenu.
   contextMenu1.MenuItems.AddRange(myItems);
}
Private Sub CopyMyMenus()
    ' Create empty array to store MenuItem objects.
    Dim myItems(menuItem1.MenuItems.Count + menuItem2.MenuItems.Count) As MenuItem
       
    ' Copy elements of the first MenuItem collection to array.
    menuItem1.MenuItems.CopyTo(myItems, 0)
    ' Copy elements of the second MenuItem collection, after the first set.
    menuItem2.MenuItems.CopyTo(myItems, myItems.Length)
       
    ' Add the array to the menu item collection of the ContextMenu.
    contextMenu1.MenuItems.AddRange(myItems)
End Sub

Remarks

You can use method to quickly add a group of previously created MenuItem objects to the collection instead of manually adding each MenuItem to the collection using the Add method. If the collection already contains MenuItem objects, calling this method will add the new MenuItem objects to the end of the collection.

Applies to

See also