private void AddSelect_Item(SHItemAddRemoveType nItemAddRemoveType)
        {
            if (tvDialogDetail.SelectedNode == null || tvDialogDetail.SelectedNode.Tag == null)
            {
                return;
            }

            Type nodeType = tvDialogDetail.SelectedNode.Tag.GetType();

            if (nodeType == typeof(SHDialogSelect))
            {
                SHDialogSelect      dialogSelect = (SHDialogSelect)tvDialogDetail.SelectedNode.Tag;
                SHItemAddRemoveBase newItem      = SHItemAddRemove.NewItem(nItemAddRemoveType);

                newItem.id     = 0;
                newItem.amount = 0;

                if (dialogSelect.Item == null)
                {
                    dialogSelect.Item = new SHItemAddRemove();
                }
                dialogSelect.Item.dataList.Add(newItem);

                TreeNode newNode = ProcessItem(tvDialogDetail.SelectedNode, newItem);

                tvDialogDetail.SelectedNode = newNode;
            }

            Global._VelixianForms.FindForm("DIALOG").Touch();
        }
        public static SHItemAddRemoveBase NewItem(SHItemAddRemoveType nType)
        {
            switch (nType)
            {
            case SHItemAddRemoveType.ADD: return(new SHItemAdd());

            case SHItemAddRemoveType.REMOVE: return(new SHItemRemove());

            case SHItemAddRemoveType.FILL: return(new SHItemFill());
            }
            return(null);
        }