private void EqTreeViewAdd()
        {
            TreeNode selectedNode = _eqTreeView.SelectedNode;

            switch (selectedNode.Text)
            {
            //显示属性初始化窗口
            case "PPCs":
                PPCInitForm ppcInitForm = new PPCInitForm();
                ppcInitForm.ShowDialog();
                if (ppcInitForm.DialogResult == DialogResult.Yes)
                {
                    NodeInfo.AddChildrenNode(selectedNode, ppcInitForm.GetObjectName(), Princeple.FormType.PPC);
                }
                ppcInitForm.Dispose();
                break;

            case "FPGAs":
                FPGAInitForm fpgaInitForm = new FPGAInitForm();
                fpgaInitForm.ShowDialog();
                if (fpgaInitForm.DialogResult == DialogResult.Yes)
                {
                    NodeInfo.AddChildrenNode(selectedNode, fpgaInitForm.GetObjectName(), Princeple.FormType.FPGA);
                }
                fpgaInitForm.Dispose();
                break;

            case "ZYNQs":
                ZYNQInitForm zynqInitForm = new ZYNQInitForm();
                zynqInitForm.ShowDialog();
                if (zynqInitForm.DialogResult == DialogResult.Yes)
                {
                    NodeInfo.AddChildrenNode(selectedNode, zynqInitForm.GetObjectName(), Princeple.FormType.ZYNQ);
                }
                zynqInitForm.Dispose();
                break;

            case "板卡库":
                BoardInitForm boardInitForm = new BoardInitForm();
                boardInitForm.ShowDialog();

                if (boardInitForm.DialogResult == DialogResult.Yes)
                {
                    NodeInfo.AddChildrenNode(selectedNode, boardInitForm.BoardNodeName, Princeple.FormType.BOARD);
                }
                boardInitForm.Dispose();
                break;

            case "背板库":
                BackPlaneInitForm bpInitForm = new BackPlaneInitForm();
                bpInitForm.ShowDialog();
                if (bpInitForm.DialogResult == DialogResult.Yes)
                {
                    NodeInfo.AddChildrenNode(selectedNode, bpInitForm.GetObjectName(), Princeple.FormType.BACKPLANE);
                }
                bpInitForm.Dispose();
                break;

            case "机箱库":
                ContainerInitForm ctnInitForm = new ContainerInitForm();
                ctnInitForm.ShowDialog();
                if (ctnInitForm.DialogResult == DialogResult.Yes)
                {
                    NodeInfo.AddChildrenNode(selectedNode, ctnInitForm.GetObjectName(), Princeple.FormType.CONTIANER);
                    ctnInitForm.Dispose();
                }
                break;

            case "系统库":
                SystemStruInitForm sysInitForm = new SystemStruInitForm();
                sysInitForm.ShowDialog();
                if (sysInitForm.DialogResult == DialogResult.Yes)
                {
                    NodeInfo.AddChildrenNode(selectedNode, sysInitForm.GetObjectName(), Princeple.FormType.SYSTEM);
                    sysInitForm.Dispose();
                }
                break;

            default:
                break;
            }
            //无论有无文件内容更改都把TreeView的内容读入对应xml文件内
            XMLManager.HandleTreeView.ReadTreeViewToXML(_eqTreeView, XMLManager.PathManager.GetEqLibFilePath());
        }
        /*组件修改*/
        private void ContextMSModify_Click(object sender, EventArgs e)
        {
            TreeNode selectedNode = _eqTreeView.SelectedNode;
            string   oldNodeName  = selectedNode.Text;

            switch (selectedNode.Parent.Text)
            {
            case "PPCs":
                //通过读取XML文件初始化PPC,然后用一个PPC实例初始化PPCInitForm
                PPC ppc = ModelFactory <PPC> .CreateByName(selectedNode.Text);

                PPCInitForm ppcInitForm = new PPCInitForm(ppc);
                ppcInitForm.ShowDialog();

                if (ppcInitForm.DialogResult == DialogResult.Yes)
                {
                    if (ppcInitForm.GetObjectName() != oldNodeName)
                    {    //改了名字的话,要删除老文件
                        selectedNode.Text = ppcInitForm.GetObjectName();
                        var filePath = string.Format(@"{0}\{1}.xml", XMLManager.PathManager.GetPPCPath(), oldNodeName);
                        File.Delete(filePath);
                    }
                }
                ppcInitForm.Dispose();
                break;

            case "FPGAs":
                FPGA fpga = ModelFactory <FPGA> .CreateByName(selectedNode.Text);

                FPGAInitForm fpgaInitForm = new FPGAInitForm(fpga);
                fpgaInitForm.ShowDialog();

                if (fpgaInitForm.DialogResult == DialogResult.Yes)
                {
                    if (fpgaInitForm.GetObjectName() != oldNodeName)
                    {
                        selectedNode.Text = fpgaInitForm.GetObjectName();
                        var filePath = string.Format(@"{0}\{1}.xml", XMLManager.PathManager.GetFPGAPath(), oldNodeName);
                        File.Delete(filePath);
                    }
                }
                fpgaInitForm.Dispose();
                break;

            case "ZYNQs":
                ZYNQ zynq = ModelFactory <ZYNQ> .CreateByName(selectedNode.Text);

                ZYNQInitForm zynqInitForm = new ZYNQInitForm(zynq);
                zynqInitForm.ShowDialog();

                if (zynqInitForm.DialogResult == DialogResult.Yes)
                {
                    if (zynqInitForm.GetObjectName() != oldNodeName)
                    {
                        selectedNode.Text = zynqInitForm.GetObjectName();
                        var filePath = string.Format(@"{0}\{1}.xml", XMLManager.PathManager.GetZYNQPath(), oldNodeName);
                        File.Delete(filePath);
                    }
                }
                zynqInitForm.Dispose();
                break;

            case "板卡库":
                Board board = ModelFactory <Board> .CreateByName(selectedNode.Text);

                BoardInitForm boardInitForm = new BoardInitForm(board);
                boardInitForm.ShowDialog();

                if (boardInitForm.DialogResult == DialogResult.Yes)
                {
                    if (boardInitForm.GetObjectName() != oldNodeName)
                    {
                        selectedNode.Text = boardInitForm.GetObjectName();
                        var filePath = string.Format(@"{0}\{1}.xml", XMLManager.PathManager.GetBoardPath(), oldNodeName);
                        File.Delete(filePath);
                    }
                }
                boardInitForm.Dispose();
                break;

            case "背板库":
                BackPlane bp = ModelFactory <BackPlane> .CreateByName(selectedNode.Text);

                BackPlaneInitForm bpInitForm = new BackPlaneInitForm(bp);
                bpInitForm.ShowDialog();

                if (bpInitForm.DialogResult == DialogResult.Yes)
                {
                    if (bpInitForm.GetObjectName() != oldNodeName)
                    {
                        selectedNode.Text = bpInitForm.GetObjectName();
                        var filePath = string.Format(@"{0}\{1}.xml", XMLManager.PathManager.GetBackPlanePath(), oldNodeName);
                        File.Delete(filePath);
                    }
                }
                bpInitForm.Dispose();
                break;

            case "机箱库":
                Models.Container  ctnView     = ModelFactory <Models.Container> .CreateByName(selectedNode.Text);;
                ContainerInitForm ctnInitForm = new ContainerInitForm(ctnView);
                ctnInitForm.ShowDialog();

                if (ctnInitForm.DialogResult == DialogResult.Yes)
                {
                    if (ctnInitForm.GetObjectName() != oldNodeName)
                    {
                        selectedNode.Text = ctnInitForm.GetObjectName();
                        var filePath = string.Format(@"{0}\{1}.xml", XMLManager.PathManager.GetContainerPath(), oldNodeName);
                        File.Delete(filePath);
                    }
                }
                ctnInitForm.Dispose();
                break;

            default:
                break;
            }
            //无论有无文件内容更改都把TreeView的内容读入对应xml文件内
            XMLManager.HandleTreeView.ReadTreeViewToXML(_eqTreeView, XMLManager.PathManager.GetEqLibFilePath());
        }