コード例 #1
0
        /// <summary>
        /// 将文件转换为PicTabPage对象
        /// </summary>
        /// <param name="path">文件路径</param>
        /// <returns></returns>
        public PicTabPage XmlToPic(string path)
        {
            PicTabPage  pic     = new PicTabPage();
            XmlDocument XmlLoad = new XmlDocument();

            XmlLoad.Load(path);
            ///查询出根节点
            XmlNode    root    = XmlLoad.SelectSingleNode(RootName);
            XmlElement picroot = (XmlElement)root;

            pic.Id    = int.Parse(picroot.GetAttribute("ID"));
            pic.Title = picroot.GetAttribute("Title");
            ///查找CodeBox节点
            XmlNode MainCodeBoxs = root.SelectSingleNode("MainCodeBoxs");

            foreach (XmlNode node in MainCodeBoxs.SelectNodes("CodeBox"))
            {
                DataWriteFunction.ReadCodeBoxObject(node, pic);
            }
            ///查找BezierLine节点
            XmlNode MainBezierLines = root.SelectSingleNode("MainBezierLines");

            foreach (XmlNode node in MainBezierLines.SelectNodes("BezierLine"))
            {
                DataWriteFunction.ReadBezierLine(node, pic);
            }
            ///查找函数节点
            foreach (XmlNode node in root.SelectNodes("Function"))
            {
                DataWriteFunction.ReadFunction(node, pic);
            }
            ///查找属性节点
            foreach (XmlNode node in root.SelectNodes("XAribute"))
            {
                DataWriteFunction.ReadXAributeObject(node, pic);
            }
            XmlLoad.Save(path);
            return(pic);
        }
コード例 #2
0
        /// <summary>
        /// 读取函数内容
        /// </summary>
        /// <param name="picnode">代码图节点</param>
        /// <param name="pic">代码图(类)</param>
        public static void ReadFunction(XmlNode functionnode, PicTabPage pic)
        {
            XmlElement functionElement = (XmlElement)functionnode;
            string     Title           = functionElement.GetAttribute("Title");
            int        ID = int.Parse(functionElement.GetAttribute("ID"));

            XObject.OpenType myOpenType     = XObject.OpenTypeMapping(functionElement.GetAttribute("OpenType"));
            OverrideType     myOverrideType = XObject.OverrideTypeMapping(functionElement.GetAttribute("OverrideType"));

            PicFunctionTabPage functionpage = pic.LoadFunctionPage(Title, ID, myOpenType, myOverrideType);

            ///查找CodeBox节点
            foreach (XmlNode node in functionnode.SelectNodes("CodeBox"))
            {
                DataWriteFunction.ReadCodeBoxObject(node, functionpage);
            }
            ///查找BezierLine节点
            foreach (XmlNode node in functionnode.SelectNodes("BezierLine"))
            {
                DataWriteFunction.ReadBezierLine(node, functionpage);
            }
        }