private void addClickedToolStripMenuItem(ToolStripMenuItem clickedItem, string clickedItemType, int column = -1, int row = -1)
        {
            var targetItem = getSelectedItemByName(clickedItemType, clickedItem.Text);

            if (targetItem.getItemDisplayType().Equals("Normal"))
            {
                var targetItemUI = new NormalItemUI(targetItem.getItemName(), targetItem.getItemID());
                int i            = this.tableLayoutPanelContent.Controls.Count;
                if (column == -1 && row == -1)
                {
                    this.tableLayoutPanelContent.Controls.Add(targetItemUI, (int)i % 2 == 0 ? 0 : 2, (int)i / 2);
                }
                else
                {
                    this.tableLayoutPanelContent.Controls.Add(targetItemUI, column, row);
                }
                targetItemUI.Dock             = DockStyle.Fill;
                targetItemUI.ContextMenuStrip = this.metroContextMenuItem;
                if (i % 2 != 0)
                {
                    this.tableLayoutPanelContent.RowCount++;
                    this.tableLayoutPanelContent.RowStyles.Add(new RowStyle(SizeType.Absolute, 25.0f));
                }
                initContentItems(targetItem.getItemUnitType(), targetItem.getItemName());
            }
            else if (targetItem.getItemDisplayType().Equals("Mix"))
            {
                var targetItemUI = new MixItemUI(targetItem.getItemName(), targetItem.getItemID());
                int i            = this.tableLayoutPanelContent.Controls.Count;
                this.tableLayoutPanelContent.RowStyles[this.tableLayoutPanelContent.RowStyles.Count - 1] = new RowStyle(SizeType.Absolute, 50.0f);
                if (column == -1 && row == -1)
                {
                    this.tableLayoutPanelContent.Controls.Add(targetItemUI, (int)i % 2 == 0 ? 0 : 2, (int)i / 2);
                }
                else
                {
                    this.tableLayoutPanelContent.Controls.Add(targetItemUI, column, row);
                }
                targetItemUI.Dock             = DockStyle.Fill;
                targetItemUI.ContextMenuStrip = this.metroContextMenuItem;
                if (i % 2 != 0)
                {
                    this.tableLayoutPanelContent.RowCount++;
                    this.tableLayoutPanelContent.RowStyles.Add(new RowStyle(SizeType.Absolute, 25.0f));
                }
                initContentItems(targetItem.getItemUnitType(), targetItem.getItemName());
            }
        }
        private void initGroupContents(int selectedIndex)
        {
            contentBoolItems.Clear();
            contentSingleItems.Clear();
            contentControlItems.Clear();
            this.tableLayoutPanelContent.Controls.Clear();
            this.tableLayoutPanelContent.RowCount = 1;
            this.tableLayoutPanelContent.RowStyles.Clear();
            this.tableLayoutPanelContent.RowStyles.Add(new RowStyle(SizeType.Absolute, 25.0f));
            var contents = this.groupContents.Values.ElementAt(selectedIndex);

            if (selectedIndex >= 4)
            {
                foreach (XB_Item item in contents)
                {
                    contentControlItems.Add(item.getItemName());
                }
            }
            int rows = contents.Count() / 2 + 2;

            for (int i = 0; i < contents.Count(); i++)
            {
                if (i == 0)
                {
                    if (contents.ElementAt(0).getItemDisplayType().Equals("Normal"))
                    {
                        var itemUI = new NormalItemUI(contents.ElementAt(0).getItemName(), contents.ElementAt(0).getItemID());
                        this.tableLayoutPanelContent.Controls.Add(itemUI, 0, 0);
                        itemUI.Dock             = DockStyle.Fill;
                        itemUI.ContextMenuStrip = this.metroContextMenuItem;
                        initContentItems(contents.ElementAt(0).getItemUnitType(), contents.ElementAt(0).getItemName());
                    }
                    else if (contents.ElementAt(0).getItemDisplayType().Equals("Mix"))
                    {
                        this.tableLayoutPanelContent.RowStyles[this.tableLayoutPanelContent.RowStyles.Count - 1] = new RowStyle(SizeType.Absolute, 50.0f);
                        var itemUI = new MixItemUI(contents.ElementAt(0).getItemName(), contents.ElementAt(0).getItemID());
                        this.tableLayoutPanelContent.Controls.Add(itemUI, 0, 0);
                        itemUI.Dock             = DockStyle.Fill;
                        itemUI.ContextMenuStrip = this.metroContextMenuItem;
                        initContentItems(contents.ElementAt(0).getItemUnitType(), contents.ElementAt(0).getItemName());
                    }
                }
                else
                {
                    if (contents.ElementAt(i).getItemDisplayType().Equals("Normal"))
                    {
                        var itemUI = new NormalItemUI(contents.ElementAt(i).getItemName(), contents.ElementAt(i).getItemID());
                        this.tableLayoutPanelContent.Controls.Add(itemUI, (int)i % 2 == 0 ? 0 : 2, (int)i / 2);
                        itemUI.Dock             = DockStyle.Fill;
                        itemUI.ContextMenuStrip = this.metroContextMenuItem;
                        //itemUI.ContextMenuStrip.Items[0].Visible = false;
                        if (i % 2 != 0)
                        {
                            this.tableLayoutPanelContent.RowCount++;
                            this.tableLayoutPanelContent.RowStyles.Add(new RowStyle(SizeType.Absolute, 25.0f));
                        }
                        initContentItems(contents.ElementAt(i).getItemUnitType(), contents.ElementAt(i).getItemName());
                    }
                    else if (contents.ElementAt(i).getItemDisplayType().Equals("Mix"))
                    {
                        this.tableLayoutPanelContent.RowStyles[this.tableLayoutPanelContent.RowStyles.Count - 1] = new RowStyle(SizeType.Absolute, 50.0f);
                        var itemUI = new MixItemUI(contents.ElementAt(i).getItemName(), contents.ElementAt(i).getItemID());
                        this.tableLayoutPanelContent.Controls.Add(itemUI, (int)i % 2 == 0 ? 0 : 2, (int)i / 2);
                        itemUI.Dock             = DockStyle.Fill;
                        itemUI.ContextMenuStrip = this.metroContextMenuItem;
                        //itemUI.ContextMenuStrip.Items[0].Visible = false;
                        if (i % 2 != 0)
                        {
                            this.tableLayoutPanelContent.RowCount++;
                            this.tableLayoutPanelContent.RowStyles.Add(new RowStyle(SizeType.Absolute, 25.0f));
                        }
                        initContentItems(contents.ElementAt(i).getItemUnitType(), contents.ElementAt(i).getItemName());
                    }
                }
            }
            this.tableLayoutPanelContent.RowCount++;
            this.tableLayoutPanelContent.RowStyles.Add(new RowStyle(SizeType.Absolute, 25.0f));
            updateTreeAndContext();
        }