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

Add() public method

public Add ( MenuItem item ) : int
item MenuItem
return int
			public virtual int Add (MenuItem item)
			{
				if (item.Parent != null)
					item.Parent.MenuItems.Remove (item);
				
				items.Add (item);
				item.Index = items.Count - 1;
				UpdateItem (item);
				
				owner.OnMenuChanged (EventArgs.Empty);
				if (owner.parent_menu != null)
					owner.parent_menu.OnMenuChanged (EventArgs.Empty);
				return items.Count - 1;
			}

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 ( int index, 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