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); }