System.Windows.Forms.Menu.MenuItemCollection.Add C# (CSharp) Method

Add() public method

public Add ( int index, MenuItem item ) : int
index int
item MenuItem
return int
			public virtual int Add (int index, MenuItem item)
			{
				if (index < 0 || index > Count)
					throw new ArgumentOutOfRangeException ("Index of out range");

				ArrayList new_items = new ArrayList (Count + 1);

				for (int i = 0; i < index; i++)
					new_items.Add (items[i]);

				new_items.Add (item);

				for (int i = index; i < Count; i++)
					new_items.Add (items[i]);

				items = new_items;
				UpdateItemsIndices ();				
				UpdateItem (item);

				return index;
			}

Same methods

Menu.MenuItemCollection::Add ( string caption ) : MenuItem
Menu.MenuItemCollection::Add ( string caption, EventHandler onClick ) : MenuItem
Menu.MenuItemCollection::Add ( string caption, MenuItem items ) : MenuItem
Menu.MenuItemCollection::Add ( MenuItem item ) : int

Usage Example

Example #1
0
        public void MenuItemCollection_Add_MenuItemToCreatedMenu_Success()
        {
            using (var menu = new SubMenu(new MenuItem[0]))
            {
                Assert.NotEqual(IntPtr.Zero, menu.Handle);

                var collection = new Menu.MenuItemCollection(menu);

                var menuItem1 = new MenuItem("text1");
                Assert.Equal(0, collection.Add(menuItem1));
                Assert.Same(menuItem1, Assert.Single(collection));
                Assert.Equal(menu, menuItem1.Parent);
                Assert.Equal(0, menuItem1.Index);

                var menuItem2 = new MenuItem("text2");
                Assert.Equal(1, collection.Add(menuItem2));
                Assert.Equal(2, collection.Count);
                Assert.Same(menuItem1, collection[0]);
                Assert.Same(menuItem2, collection[1]);
                Assert.Equal(menu, menuItem1.Parent);
                Assert.Equal(0, menuItem1.Index);
                Assert.Equal(menu, menuItem2.Parent);
                Assert.Equal(1, menuItem2.Index);
            }
        }
All Usage Examples Of System.Windows.Forms.Menu.MenuItemCollection::Add