IBaseItemDB ICustomize.AddCustomizeBaseItem(int index, IBaseItemDB pBaseItem)
        {
            if (pBaseItem == null)
            {
                return(null);
            }
            if (index < 0)
            {
                index = 0;
            }
            if (index > this.DropDownItems.Count)
            {
                index = this.DropDownItems.Count;
            }
            //
            ToolStripItem item = pBaseItem.Clone() as ToolStripItem;

            if (item == null)
            {
                return(item as IBaseItemDB);
            }
            this.m_CustomizeBaseItems.Add(item);
            this.DropDownItems.Insert(index, item);
            //
            return(item as IBaseItemDB);
        }
        IBaseItemDB ICustomize.AddCustomizeBaseItemEx(int index, IBaseItemDB pBaseItem)
        {
            if (pBaseItem == null)
            {
                return(null);
            }
            if (index < 0)
            {
                index = 0;
            }
            if (index > this.Items.Count)
            {
                index = this.Items.Count;
            }
            //
            ToolStripItem item     = null;
            MenuItem      menuItem = pBaseItem as MenuItem;

            if (menuItem != null)
            {
                item = menuItem.CloneToButtonItem() as ToolStripItem;
            }
            else
            {
                item = pBaseItem.Clone() as ToolStripItem;
            }
            if (item == null)
            {
                return(item as IBaseItemDB);
            }
            this.m_CustomizeBaseItems.Add(item);
            this.Items.Insert(index, item);
            //
            return(item as IBaseItemDB);
        }
        IBaseItemDB ICustomize.AddCustomizeBaseItemEx(int index, IBaseItemDB pBaseItem)
        {
            if (pBaseItem == null)
            {
                return(null);
            }
            if (index < 0)
            {
                index = 0;
            }
            if (index > this.Items.Count)
            {
                index = this.Items.Count;
            }
            //
            ToolStripItem      item               = null;
            ButtonItem         buttonItem         = pBaseItem as ButtonItem;
            SplitButtonItem    splitButtonItem    = pBaseItem as SplitButtonItem;
            DropDownButtonItem dropDownButtonItem = pBaseItem as DropDownButtonItem;

            if (buttonItem != null)
            {
                item = buttonItem.CloneToMenuItem() as ToolStripItem;
            }
            else if (splitButtonItem != null)
            {
                item = splitButtonItem.CloneToMenuItem() as ToolStripItem;
            }
            else if (dropDownButtonItem != null)
            {
                item = dropDownButtonItem.CloneToMenuItem() as ToolStripItem;
            }
            else
            {
                item = pBaseItem.Clone() as ToolStripItem;
            }
            if (item == null)
            {
                return(item as IBaseItemDB);
            }
            this.m_CustomizeBaseItems.Add(item);
            this.DropDownItems.Insert(index, item);
            //
            return(item as IBaseItemDB);
        }