/// <summary>
        /// 装载工具栏,读取配置文件的分类信息,并在ExplorerBarGroup中显示分类的名称
        /// </summary>
        public void LoadToolBox()
        {
            //  string path = Path.Combine(this.designPath, PublicVariable.ToolConfigFileName);

            toolXML.Load(Path.Combine(this.designPath, PublicVariable.ToolConfigFileName));

            this.explorerBarTool.Groups.Clear();
            if (toolXML.FirstChild != null)
            {
                for (int i = 0; i < toolXML.FirstChild.ChildNodes.Count; i++)
                {
                    if (toolXML.FirstChild.ChildNodes[i] != null &&
                        toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText != null &&
                        toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText != CassViewGenerator.SpecialCodeNode)
                    {
                        ExplorerBarGroup catGroup =
                            new ExplorerBarGroup(toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText);
                        this.explorerBarTool.Groups.Add(catGroup);
                        for (int j = 0; j < toolXML.FirstChild.ChildNodes[i].ChildNodes.Count; j++)
                        {
                            if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j] != null)
                            {
                                string[] assemblyClass =
                                    toolXML.FirstChild.ChildNodes[i].ChildNodes[j].Attributes[0].InnerText.Split(new char[] { ',' });
                                Type        toolboxItemType = GetTypeFromLoadedAssembly(assemblyClass[0], assemblyClass[1]);
                                ToolboxItem toolItem        = new ToolboxItem(toolboxItemType); //表示“工具箱”中的项

                                ExplorerBarItem barItem = new ExplorerBarItem(toolItem.DisplayName);
                                barItem.Image = (Image)global::CaVeGen.Properties.Resources.ResourceManager.GetObject(assemblyClass[2]);

                                barItem.Tag  = assemblyClass;
                                barItem.Text = "  " + assemblyClass[2];

                                if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j].LastChild.Name == "OtherInfo")
                                {
                                    if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j].LastChild.ChildNodes.Count == 3)
                                    {//控件描述信息
                                        barItem.ToolTipText = toolXML.FirstChild.ChildNodes[i].ChildNodes[j].LastChild.ChildNodes[1].InnerText;
                                    }
                                }
                                catGroup.Items.Add(barItem);
                            } //end if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j] != null)
                        }     //end for (int j = 0; j < toolXML.FirstChild.ChildNodes[i].ChildNodes.Count; j++)
                    }         //end if (toolXML.FirstChild.ChildNodes[i] != null)
                    else if (toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText == CassViewGenerator.SpecialCodeNode)
                    {
                        foreach (XmlNode node in toolXML.FirstChild.ChildNodes[i].ChildNodes)
                        {
                            if (node.Attributes["name"].InnerText != "头文件")
                            {
                                CaVeGen.DesignViewFiles.CodeEditor.PLCCodeEditor.SpecialCode.Add(node.Attributes["varname"].InnerText.ToUpper(), node.Attributes["name"].InnerText);
                            }
                        }
                    }
                } //end for (int i = 0; i < toolXML.FirstChild.ChildNodes.Count; i++)
            }     //end if (toolXML.FirstChild != null)
        }         //end function void LoadToolBox()
        /// <summary>
        /// װ�ع�����,��ȡ�����ļ��ķ�����Ϣ������ExplorerBarGroup����ʾ���������
        /// </summary>
        public void LoadToolBox()
        {
            //  string path = Path.Combine(this.designPath, PublicVariable.ToolConfigFileName);

            toolXML.Load(Path.Combine(this.designPath, PublicVariable.ToolConfigFileName));

            this.explorerBarTool.Groups.Clear();
            if (toolXML.FirstChild != null)
            {
                for (int i = 0; i < toolXML.FirstChild.ChildNodes.Count; i++)
                {
                    if (toolXML.FirstChild.ChildNodes[i] != null
                        && toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText != null
                        && toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText != CassViewGenerator.SpecialCodeNode)
                    {
                        ExplorerBarGroup catGroup =
                            new ExplorerBarGroup(toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText);
                        this.explorerBarTool.Groups.Add(catGroup);
                        for (int j = 0; j < toolXML.FirstChild.ChildNodes[i].ChildNodes.Count; j++)
                        {
                            if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j] != null)
                            {
                                string[] assemblyClass =
                                    toolXML.FirstChild.ChildNodes[i].ChildNodes[j].Attributes[0].InnerText.Split(new char[] { ',' });
                                Type toolboxItemType = GetTypeFromLoadedAssembly(assemblyClass[0], assemblyClass[1]);
                                ToolboxItem toolItem = new ToolboxItem(toolboxItemType);        //��ʾ�������䡱�е���

                                ExplorerBarItem barItem = new ExplorerBarItem(toolItem.DisplayName);
                                barItem.Image = (Image)global::CaVeGen.Properties.Resources.ResourceManager.GetObject(assemblyClass[2]);

                                barItem.Tag = assemblyClass;
                                barItem.Text = "  "+assemblyClass[2];

                                if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j].LastChild.Name == "OtherInfo")
                                {
                                    if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j].LastChild.ChildNodes.Count == 3)
                                    {//�ؼ�������Ϣ
                                        barItem.ToolTipText = toolXML.FirstChild.ChildNodes[i].ChildNodes[j].LastChild.ChildNodes[1].InnerText;
                                    }
                                }
                                catGroup.Items.Add(barItem);
                            }//end if (toolXML.FirstChild.ChildNodes[i].ChildNodes[j] != null)
                        }//end for (int j = 0; j < toolXML.FirstChild.ChildNodes[i].ChildNodes.Count; j++)
                    }//end if (toolXML.FirstChild.ChildNodes[i] != null)
                    else if (toolXML.FirstChild.ChildNodes[i].Attributes[0].InnerText == CassViewGenerator.SpecialCodeNode)
                    {
                        foreach (XmlNode node in toolXML.FirstChild.ChildNodes[i].ChildNodes)
                        {
                            if (node.Attributes["name"].InnerText != "ͷ�ļ�")
                            {
                                CaVeGen.DesignViewFiles.CodeEditor.PLCCodeEditor.SpecialCode.Add(node.Attributes["varname"].InnerText.ToUpper(), node.Attributes["name"].InnerText);
                            }
                        }
                    }
                }//end for (int i = 0; i < toolXML.FirstChild.ChildNodes.Count; i++)
            }//end if (toolXML.FirstChild != null)
        }