Parcourir la source

生成线程列表

wb_han il y a 5 ans
Parent
commit
3419a2c798

+ 38 - 1
FileManager/XmlManager.cs

@@ -20,7 +20,7 @@ namespace FileManager
         /// <param name="rootnode">根节点名</param>
         /// <param name="list_attributes">根节点的属性键值对</param>
         /// <returns></returns>
-        public static Boolean CreateXmlFile(String xmlfullname )
+        public static Boolean CreateXmlFile(String xmlfullname)
         {
             XmlDocument xmlDoc = new XmlDocument();
             //创建类型声明节点  
@@ -42,5 +42,42 @@ namespace FileManager
             }
         }
         #endregion
+
+        #region 获取Xml文件中节点内的信息
+        /// <summary>
+        /// 获取Xml文件中节点内的信息
+        /// </summary>
+        /// <param name="xmlfullname">Xml文件的全路径</param>
+        /// <param name="measureCode">线程编号</param>
+        /// <returns></returns>
+        public static XmlNodeList GetXmlMeasureFlowNodeInfo(String xmlfullname, string measureCode)
+        {
+            try
+            {
+                XmlDocument xmlDoc = new XmlDocument();
+                //加载XML文件  
+                xmlDoc.Load(xmlfullname);
+                //获得文档中的根节点。
+                XmlElement xmlElement = xmlDoc.DocumentElement;
+                XmlNodeList nodeList = xmlElement.ChildNodes;
+                XmlNodeList nodeChildList = null;
+                foreach (XmlNode item in nodeList)
+                {
+                    if (item.Attributes["Code"].Value == measureCode)
+                    {
+                        //获取当前节点下的所有信息
+                        nodeChildList = item.ChildNodes;
+                        break;
+                    }
+                }
+                return nodeChildList;
+            }
+            catch (Exception ex)
+            {
+                LogManager.LogError(ex.ToString());
+                return null;
+            }
+        }
+        #endregion
     }
 }

+ 4 - 4
HOZProject/FormHOZMain.Designer.cs

@@ -276,7 +276,7 @@
             this.pbImportTemplateFile.BackgroundImage = global::HOZProject.Properties.Resources.ImportConfigFile;
             this.pbImportTemplateFile.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
             this.pbImportTemplateFile.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.pbImportTemplateFile.Location = new System.Drawing.Point(300, 4);
+            this.pbImportTemplateFile.Location = new System.Drawing.Point(224, 4);
             this.pbImportTemplateFile.Name = "pbImportTemplateFile";
             this.pbImportTemplateFile.Size = new System.Drawing.Size(68, 71);
             this.pbImportTemplateFile.TabIndex = 6;
@@ -288,7 +288,7 @@
             this.pbLog.BackgroundImage = global::HOZProject.Properties.Resources.Log;
             this.pbLog.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
             this.pbLog.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.pbLog.Location = new System.Drawing.Point(227, 4);
+            this.pbLog.Location = new System.Drawing.Point(297, 4);
             this.pbLog.Name = "pbLog";
             this.pbLog.Size = new System.Drawing.Size(68, 71);
             this.pbLog.TabIndex = 6;
@@ -300,7 +300,7 @@
             this.pbInit.BackgroundImage = global::HOZProject.Properties.Resources.init;
             this.pbInit.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
             this.pbInit.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.pbInit.Location = new System.Drawing.Point(153, 4);
+            this.pbInit.Location = new System.Drawing.Point(151, 4);
             this.pbInit.Name = "pbInit";
             this.pbInit.Size = new System.Drawing.Size(68, 71);
             this.pbInit.TabIndex = 5;
@@ -312,7 +312,7 @@
             this.pbSave.BackgroundImage = global::HOZProject.Properties.Resources.save;
             this.pbSave.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
             this.pbSave.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.pbSave.Location = new System.Drawing.Point(79, 4);
+            this.pbSave.Location = new System.Drawing.Point(78, 4);
             this.pbSave.Name = "pbSave";
             this.pbSave.Size = new System.Drawing.Size(68, 71);
             this.pbSave.TabIndex = 4;

+ 1 - 0
HOZProject/FormHOZMain.cs

@@ -172,6 +172,7 @@ namespace HOZProject
             pbOpen.Enabled = cState;
             pbSave.Enabled = cState;
             pbInit.Enabled = cState;
+            pbImportTemplateFile.Enabled = cState;
             pbLog.Enabled = cState;
         }
         #endregion

+ 119 - 119
HOZProject/MeasureXML/MeasureStructXml.xml

@@ -1,141 +1,141 @@
 <?xml version="1.0" encoding="utf-8" ?>
 <MeasureList>
   <MeasureFlow Code="1" Name="拍照">
-    <Step Index="0" Name="" Code="1-0" IsData="False" Title="移动至切割位置" Tooltip="自动定位切割位置"></Step>
-    <Step Index="1" Name="" Code="1-1" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-    <Step Index="2" Name="" Code="1-2" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、亮度、对比度"></Step>
-    <Step Index="3" Name="" Code="1-3" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-    <Step Index="4" Name="" Code="1-4" IsData="False" Title="保存照片" Tooltip="保存照片"></Step>
-    <Step Index="5" Name="" Code="1-5" IsData="False" Title="保存信息" Tooltip="保存切孔位置坐标,保存客户返回值信息"></Step>
+    <Step Index="0" Name="" Code="1-0" IsData="False" Title="移动至切割位置" Details="自动定位切割位置"></Step>
+    <Step Index="1" Name="" Code="1-1" IsData="False" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+    <Step Index="2" Name="" Code="1-2" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、亮度、对比度"></Step>
+    <Step Index="3" Name="" Code="1-3" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+    <Step Index="4" Name="" Code="1-4" IsData="False" Title="保存照片" Details="保存照片"></Step>
+    <Step Index="5" Name="" Code="1-5" IsData="False" Title="保存信息" Details="保存切孔位置坐标,保存客户返回值信息"></Step>
 
-    <Step Index="6" Name="" Code="1-6" IsData="False" Title="移动至切割位置" Tooltip="自动定位切割位置"></Step>
-    <Step Index="7" Name="" Code="1-7" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-    <Step Index="8" Name="" Code="1-8" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、亮度、对比度"></Step>
-    <Step Index="9" Name="" Code="1-9" IsData="True" Title="拍照" Tooltip="控制SEM拍照"></Step>
-    <Step Index="10" Name="" Code="1-10" IsData="True" Title="获取偏移信息" Tooltip="显示照片,获取偏移坐标,以及偏移角度"></Step>
-    <Step Index="11" Name="" Code="1-11" IsData="False" Title="移动至切孔位置" Tooltip="根据坐标控制SEM移动到切孔位置,居中"></Step>
-    <Step Index="12" Name="" Code="1-12" IsData="False" Title="验证移动准确性" Tooltip="获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+    <Step Index="6" Name="" Code="1-6" IsData="False" Title="移动至切割位置" Details="自动定位切割位置"></Step>
+    <Step Index="7" Name="" Code="1-7" IsData="False" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+    <Step Index="8" Name="" Code="1-8" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、亮度、对比度"></Step>
+    <Step Index="9" Name="" Code="1-9" IsData="True" Title="拍照" Details="控制SEM拍照"></Step>
+    <Step Index="10" Name="" Code="1-10" IsData="True" Title="获取偏移信息" Details="显示照片,获取偏移坐标,以及偏移角度"></Step>
+    <Step Index="11" Name="" Code="1-11" IsData="False" Title="移动至切孔位置" Details="根据坐标控制SEM移动到切孔位置,居中"></Step>
+    <Step Index="12" Name="" Code="1-12" IsData="False" Title="验证移动准确性" Details="获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
 
-    <Step Index="13" Name="" Code="1-13" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-    <Step Index="14" Name="" Code="1-14" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、亮度、对比度"></Step>
-    <Step Index="15" Name="" Code="1-15" IsData="False" Title="角度补偿" Tooltip="设置SEM角度补偿"></Step>
-    <Step Index="16" Name="" Code="1-16" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-    <Step Index="17" Name="" Code="1-17" IsData="False" Title="保存照片" Tooltip="设置图片名称、保存图片"></Step>
-    <Step Index="18" Name="" Code="1-18" IsData="True" Title="获取偏移坐标" Tooltip="将照片传给客户,获取偏移坐标"></Step>
-    <Step Index="19" Name="" Code="1-19" IsData="False" Title="移动至分析位置" Tooltip="根据坐标控制SEM移动到分析位置"></Step>
-    <Step Index="20" Name="" Code="1-20" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+    <Step Index="13" Name="" Code="1-13" IsData="False" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+    <Step Index="14" Name="" Code="1-14" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、亮度、对比度"></Step>
+    <Step Index="15" Name="" Code="1-15" IsData="False" Title="角度补偿" Details="设置SEM角度补偿"></Step>
+    <Step Index="16" Name="" Code="1-16" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+    <Step Index="17" Name="" Code="1-17" IsData="False" Title="保存照片" Details="设置图片名称、保存图片"></Step>
+    <Step Index="18" Name="" Code="1-18" IsData="True" Title="获取偏移坐标" Details="将照片传给客户,获取偏移坐标"></Step>
+    <Step Index="19" Name="" Code="1-19" IsData="False" Title="移动至分析位置" Details="根据坐标控制SEM移动到分析位置"></Step>
+    <Step Index="20" Name="" Code="1-20" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
     
-    <Step Index="21" Name="" Code="1-21" IsData="False" Title="平行校正" Tooltip="控制SEM平行校正,并记录校正前初始值"></Step>
-    <Step Index="22" Name="" Code="1-22" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大到指定参数大小范围"></Step>
-    <Step Index="23" Name="" Code="1-23" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、消像散、亮度、对比度"></Step>
-    <Step Index="24" Name="" Code="1-24" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-    <Step Index="25" Name="" Code="1-25" IsData="False" Title="保存照片" Tooltip="设置图片名称、保存图片"></Step>
-    <Step Index="26" Name="" Code="1-26" IsData="False" Title="取消电子束校正并初始化" Tooltip="控制SEM取消电子束校正,回到初始值"></Step>
-    <Step Index="27" Name="" Code="1-27" IsData="False" Title="自动能谱分析" Tooltip="确定能谱位置、控制牛津打能谱、能谱分析-面扫+线扫"></Step>
-    <Step Index="28" Name="" Code="1-28" IsData="False" Title="初始化" Tooltip="多切孔进行初始化操作"></Step>
+    <Step Index="21" Name="" Code="1-21" IsData="False" Title="平行校正" Details="控制SEM平行校正,并记录校正前初始值"></Step>
+    <Step Index="22" Name="" Code="1-22" IsData="False" Title="设置放大倍数" Details="控制SEM放大到指定参数大小范围"></Step>
+    <Step Index="23" Name="" Code="1-23" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、消像散、亮度、对比度"></Step>
+    <Step Index="24" Name="" Code="1-24" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+    <Step Index="25" Name="" Code="1-25" IsData="False" Title="保存照片" Details="设置图片名称、保存图片"></Step>
+    <Step Index="26" Name="" Code="1-26" IsData="False" Title="取消电子束校正并初始化" Details="控制SEM取消电子束校正,回到初始值"></Step>
+    <Step Index="27" Name="" Code="1-27" IsData="False" Title="自动能谱分析" Details="确定能谱位置、控制牛津打能谱、能谱分析-面扫+线扫"></Step>
+    <Step Index="28" Name="" Code="1-28" IsData="False" Title="初始化" Details="多切孔进行初始化操作"></Step>
   </MeasureFlow>
   <MeasureFlow Code="2" Name="切割">
-      <Step Index="0" Name="" Code="2-0" IsData="False" Title="移动至切割位置" Tooltip="自动定位切割位置"></Step>
-      <Step Index="1" Name="" Code="2-1" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="2" Name="" Code="2-2" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、亮度、对比度"></Step>
-      <Step Index="3" Name="" Code="2-3" IsData="False" Title="角度补偿" Tooltip="设置SEM进行角度补偿"></Step>
-      <Step Index="4" Name="" Code="2-4" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-      <Step Index="5" Name="" Code="2-5" IsData="False" Title="保存照片" Tooltip="保存照片"></Step>
-      <Step Index="6" Name="" Code="2-6" IsData="False" Title="FIB拍照参数" Tooltip="设置FIB拍照参数-扫描时间、束流等"></Step>
-      <Step Index="7" Name="" Code="2-7" IsData="False" Title="FIB设置参数" Tooltip="控制FIB自动亮度、对比度"></Step>
-      <Step Index="8" Name="" Code="2-8" IsData="False" Title="FIB拍照" Tooltip=""></Step>
-      <Step Index="9" Name="" Code="2-9" IsData="False" Title="保存照片" Tooltip="保存照片"></Step>
-      <Step Index="10" Name="" Code="2-10" IsData="True" Title="显示照片" Tooltip="将照片传给客户,返回梯形位置坐标,及样品类型参数"></Step>
-      <Step Index="11" Name="" Code="2-11" IsData="False" Title="FIB调整到中心位置" Tooltip="根据梯形坐标控制FIB调整到中心位置"></Step>
-      <Step Index="12" Name="" Code="2-12" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
-      <Step Index="13" Name="" Code="2-13" IsData="False" Title="保存信息" Tooltip="保存切孔位置坐标,保存客户返回值信息"></Step>  
+      <Step Index="0" Name="" Code="2-0" IsData="False" Title="移动至切割位置" Details="自动定位切割位置"></Step>
+      <Step Index="1" Name="" Code="2-1" IsData="False" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="2" Name="" Code="2-2" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、亮度、对比度"></Step>
+      <Step Index="3" Name="" Code="2-3" IsData="False" Title="角度补偿" Details="设置SEM进行角度补偿"></Step>
+      <Step Index="4" Name="" Code="2-4" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+      <Step Index="5" Name="" Code="2-5" IsData="False" Title="保存照片" Details="保存照片"></Step>
+      <Step Index="6" Name="" Code="2-6" IsData="False" Title="FIB拍照参数" Details="设置FIB拍照参数-扫描时间、束流等"></Step>
+      <Step Index="7" Name="" Code="2-7" IsData="False" Title="FIB设置参数" Details="控制FIB自动亮度、对比度"></Step>
+      <Step Index="8" Name="" Code="2-8" IsData="False" Title="FIB拍照" Details=""></Step>
+      <Step Index="9" Name="" Code="2-9" IsData="False" Title="保存照片" Details="保存照片"></Step>
+      <Step Index="10" Name="" Code="2-10" IsData="True" Title="显示照片" Details="将照片传给客户,返回梯形位置坐标,及样品类型参数"></Step>
+      <Step Index="11" Name="" Code="2-11" IsData="False" Title="FIB调整到中心位置" Details="根据梯形坐标控制FIB调整到中心位置"></Step>
+      <Step Index="12" Name="" Code="2-12" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+      <Step Index="13" Name="" Code="2-13" IsData="False" Title="保存信息" Details="保存切孔位置坐标,保存客户返回值信息"></Step>  
     
-      <Step Index="14" Name="" Code="2-14" IsData="True" Title="设置FIB参数" Tooltip="根据参数设置FIB扫描时间(使图清晰),设置梯形上下边及深度、设置束流等"></Step>
-      <Step Index="15" Name="" Code="2-15" IsData="False" Title="FIB进行切割" Tooltip="控制FIB进行切割"></Step>
-      <Step Index="16" Name="" Code="2-16" IsData="False" Title="设置FIB放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="17" Name="" Code="2-17" IsData="False" Title="保存照片" Tooltip="保存照片"></Step>
-      <Step Index="18" Name="" Code="2-18" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比"></Step><Step Index="13" Name="" Code="2-13" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="19" Name="" Code="2-19" IsData="False" Title="设置FIB解冻" Tooltip="设置FIB解冻:先读取状态,如果冻结状态则进行解冻"></Step>
+      <Step Index="14" Name="" Code="2-14" IsData="True" Title="设置FIB参数" Details="根据参数设置FIB扫描时间(使图清晰),设置梯形上下边及深度、设置束流等"></Step>
+      <Step Index="15" Name="" Code="2-15" IsData="False" Title="FIB进行切割" Details="控制FIB进行切割"></Step>
+      <Step Index="16" Name="" Code="2-16" IsData="False" Title="设置FIB放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="17" Name="" Code="2-17" IsData="False" Title="保存照片" Details="保存照片"></Step>
+      <Step Index="18" Name="" Code="2-18" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比"></Step><Step Index="13" Name="" Code="2-13" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="19" Name="" Code="2-19" IsData="False" Title="设置FIB解冻" Details="设置FIB解冻:先读取状态,如果冻结状态则进行解冻"></Step>
 
-      <Step Index="20" Name="" Code="2-20" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="21" Name="" Code="2-21" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、亮度、对比度"></Step>
-      <Step Index="22" Name="" Code="2-22" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-      <Step Index="23" Name="" Code="2-23" IsData="True" Title="显示照片" Tooltip="获取偏移坐标,以及偏移角度"></Step>
-      <Step Index="24" Name="" Code="2-24" IsData="False" Title="移动到切孔位置" Tooltip="根据坐标控制SEM移动到切孔位置,居中"></Step>
-      <Step Index="25" Name="" Code="2-25" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+      <Step Index="20" Name="" Code="2-20" IsData="False" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="21" Name="" Code="2-21" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、亮度、对比度"></Step>
+      <Step Index="22" Name="" Code="2-22" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+      <Step Index="23" Name="" Code="2-23" IsData="True" Title="显示照片" Details="获取偏移坐标,以及偏移角度"></Step>
+      <Step Index="24" Name="" Code="2-24" IsData="False" Title="移动到切孔位置" Details="根据坐标控制SEM移动到切孔位置,居中"></Step>
+      <Step Index="25" Name="" Code="2-25" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
 
-      <Step Index="26" Name="" Code="2-26" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大到指定参数大小范围"></Step>
-      <Step Index="27" Name="" Code="2-27" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、消像散、亮度、对比度"></Step>
-      <Step Index="28" Name="" Code="2-28" IsData="False" Title="角度补偿" Tooltip="设置SEM角度补偿"></Step>
-      <Step Index="29" Name="" Code="2-29" IsData="True" Title="保存照片" Tooltip="设置图片名称、保存图片"></Step>
-      <Step Index="30" Name="" Code="2-30" IsData="True" Title="显示照片" Tooltip="获取偏移坐标"></Step>
-      <Step Index="31" Name="" Code="2-31" IsData="False" Title="移动到分析位置" Tooltip="根据坐标控制SEM移动到分析位置"></Step>
-      <Step Index="32" Name="" Code="2-32" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+      <Step Index="26" Name="" Code="2-26" IsData="False" Title="设置放大倍数" Details="控制SEM放大到指定参数大小范围"></Step>
+      <Step Index="27" Name="" Code="2-27" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、消像散、亮度、对比度"></Step>
+      <Step Index="28" Name="" Code="2-28" IsData="False" Title="角度补偿" Details="设置SEM角度补偿"></Step>
+      <Step Index="29" Name="" Code="2-29" IsData="True" Title="保存照片" Details="设置图片名称、保存图片"></Step>
+      <Step Index="30" Name="" Code="2-30" IsData="True" Title="显示照片" Details="获取偏移坐标"></Step>
+      <Step Index="31" Name="" Code="2-31" IsData="False" Title="移动到分析位置" Details="根据坐标控制SEM移动到分析位置"></Step>
+      <Step Index="32" Name="" Code="2-32" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
       
-      <Step Index="33" Name="" Code="2-33" IsData="False" Title="平行校正" Tooltip="控制SEM平行校正,并记录校正前初始值"></Step>
-      <Step Index="34" Name="" Code="2-34" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大到指定参数大小范围"></Step>
-      <Step Index="35" Name="" Code="2-35" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、消像散、亮度、对比度"></Step>
-      <Step Index="36" Name="" Code="2-36" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-      <Step Index="37" Name="" Code="2-37" IsData="False" Title="保存照片" Tooltip="设置图片名称、保存图片"></Step>
-      <Step Index="38" Name="" Code="2-38" IsData="False" Title="取消电子束校正并初始化" Tooltip="控制SEM取消电子束校正,回到初始值"></Step>
+      <Step Index="33" Name="" Code="2-33" IsData="False" Title="平行校正" Details="控制SEM平行校正,并记录校正前初始值"></Step>
+      <Step Index="34" Name="" Code="2-34" IsData="False" Title="设置放大倍数" Details="控制SEM放大到指定参数大小范围"></Step>
+      <Step Index="35" Name="" Code="2-35" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、消像散、亮度、对比度"></Step>
+      <Step Index="36" Name="" Code="2-36" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+      <Step Index="37" Name="" Code="2-37" IsData="False" Title="保存照片" Details="设置图片名称、保存图片"></Step>
+      <Step Index="38" Name="" Code="2-38" IsData="False" Title="取消电子束校正并初始化" Details="控制SEM取消电子束校正,回到初始值"></Step>
 
-      <Step Index="39" Name="" Code="2-39" IsData="False" Title="传入参数" Tooltip="获取SEM Pixel Size 给客户传入参数"></Step>
-      <Step Index="40" Name="" Code="2-40" IsData="True" Title="显示照片" Tooltip="将照片传给客户,客户进行层高分析"></Step>
-      <Step Index="41" Name="" Code="2-41" IsData="False" Title="自动能谱分析" Tooltip="确定能谱位置、控制牛津打能谱、能谱分析-面扫+线扫"></Step>
-      <Step Index="42" Name="" Code="2-42" IsData="False" Title="初始化" Tooltip="多切孔进行初始化操作"></Step>
+      <Step Index="39" Name="" Code="2-39" IsData="False" Title="传入参数" Details="获取SEM Pixel Size 给客户传入参数"></Step>
+      <Step Index="40" Name="" Code="2-40" IsData="True" Title="显示照片" Details="将照片传给客户,客户进行层高分析"></Step>
+      <Step Index="41" Name="" Code="2-41" IsData="False" Title="自动能谱分析" Details="确定能谱位置、控制牛津打能谱、能谱分析-面扫+线扫"></Step>
+      <Step Index="42" Name="" Code="2-42" IsData="False" Title="初始化" Details="多切孔进行初始化操作"></Step>
   </MeasureFlow>
   <MeasureFlow Code="3" Name="PT+切割">
-      <Step Index="0" Name="" Code="3-0" IsData="False" Title="PT沉积" Tooltip="自动根据样品类型参数确定是否需要PT沉积"></Step>
-      <Step Index="1" Name="" Code="3-1" IsData="False" Title="移动至切割位置" Tooltip="自动定位切割位置"></Step>
-      <Step Index="2" Name="" Code="3-2" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="3" Name="" Code="3-3" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、亮度、对比度"></Step>
-      <Step Index="4" Name="" Code="3-4" IsData="False" Title="角度补偿" Tooltip="设置SEM进行角度补偿"></Step>
-      <Step Index="5" Name="" Code="3-5" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-      <Step Index="6" Name="" Code="3-6" IsData="False" Title="保存照片" Tooltip="保存照片"></Step>
-      <Step Index="7" Name="" Code="3-7" IsData="False" Title="FIB拍照参数" Tooltip="设置FIB拍照参数-扫描时间、束流等"></Step>
-      <Step Index="8" Name="" Code="3-8" IsData="False" Title="FIB设置参数" Tooltip="控制FIB自动亮度、对比度"></Step>
-      <Step Index="9" Name="" Code="3-9" IsData="False" Title="FIB拍照" Tooltip=""></Step>
-      <Step Index="10" Name="" Code="3-10" IsData="False" Title="保存照片" Tooltip="保存照片"></Step>
-      <Step Index="11" Name="" Code="3-11" IsData="True" Title="显示照片" Tooltip="将照片传给客户,返回梯形位置坐标,及样品类型参数"></Step>
-      <Step Index="12" Name="" Code="3-12" IsData="False" Title="PT沉积" Tooltip="自动根据样品类型参数确定是否需要PT沉积"></Step>
-      <Step Index="13" Name="" Code="3-13" IsData="False" Title="FIB调整到中心位置" Tooltip="根据梯形坐标控制FIB调整到中心位置"></Step>
-      <Step Index="14" Name="" Code="3-14" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
-      <Step Index="15" Name="" Code="3-15" IsData="False" Title="保存信息" Tooltip="保存切孔位置坐标,保存客户返回值信息"></Step>
+      <Step Index="0" Name="" Code="3-0" IsData="False" Title="PT沉积" Details="自动根据样品类型参数确定是否需要PT沉积"></Step>
+      <Step Index="1" Name="" Code="3-1" IsData="False" Title="移动至切割位置" Details="自动定位切割位置"></Step>
+      <Step Index="2" Name="" Code="3-2" IsData="False" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="3" Name="" Code="3-3" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、亮度、对比度"></Step>
+      <Step Index="4" Name="" Code="3-4" IsData="False" Title="角度补偿" Details="设置SEM进行角度补偿"></Step>
+      <Step Index="5" Name="" Code="3-5" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+      <Step Index="6" Name="" Code="3-6" IsData="False" Title="保存照片" Details="保存照片"></Step>
+      <Step Index="7" Name="" Code="3-7" IsData="False" Title="FIB拍照参数" Details="设置FIB拍照参数-扫描时间、束流等"></Step>
+      <Step Index="8" Name="" Code="3-8" IsData="False" Title="FIB设置参数" Details="控制FIB自动亮度、对比度"></Step>
+      <Step Index="9" Name="" Code="3-9" IsData="False" Title="FIB拍照" Details=""></Step>
+      <Step Index="10" Name="" Code="3-10" IsData="False" Title="保存照片" Details="保存照片"></Step>
+      <Step Index="11" Name="" Code="3-11" IsData="True" Title="显示照片" Details="将照片传给客户,返回梯形位置坐标,及样品类型参数"></Step>
+      <Step Index="12" Name="" Code="3-12" IsData="False" Title="PT沉积" Details="自动根据样品类型参数确定是否需要PT沉积"></Step>
+      <Step Index="13" Name="" Code="3-13" IsData="False" Title="FIB调整到中心位置" Details="根据梯形坐标控制FIB调整到中心位置"></Step>
+      <Step Index="14" Name="" Code="3-14" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+      <Step Index="15" Name="" Code="3-15" IsData="False" Title="保存信息" Details="保存切孔位置坐标,保存客户返回值信息"></Step>
 
-      <Step Index="16" Name="" Code="3-16" IsData="True" Title="设置FIB参数" Tooltip="根据参数设置FIB扫描时间(使图清晰),设置梯形上下边及深度、设置束流等"></Step>
-      <Step Index="17" Name="" Code="3-17" IsData="False" Title="FIB进行切割" Tooltip="控制FIB进行切割"></Step>
-      <Step Index="18" Name="" Code="3-18" IsData="False" Title="设置FIB放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="19" Name="" Code="3-19" IsData="False" Title="保存照片" Tooltip="保存照片"></Step>
-      <Step Index="20" Name="" Code="3-20" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比"></Step>
-      <Step Index="21" Name="" Code="3-21" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="22" Name="" Code="3-22" IsData="False" Title="设置FIB解冻" Tooltip="设置FIB解冻:先读取状态,如果冻结状态则进行解冻"></Step>
-      <Step Index="23" Name="" Code="3-23" IsData="False" Title="拔出PT针" Tooltip="根据样品类型决定是否撤出PT针"></Step>
+      <Step Index="16" Name="" Code="3-16" IsData="True" Title="设置FIB参数" Details="根据参数设置FIB扫描时间(使图清晰),设置梯形上下边及深度、设置束流等"></Step>
+      <Step Index="17" Name="" Code="3-17" IsData="False" Title="FIB进行切割" Details="控制FIB进行切割"></Step>
+      <Step Index="18" Name="" Code="3-18" IsData="False" Title="设置FIB放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="19" Name="" Code="3-19" IsData="False" Title="保存照片" Details="保存照片"></Step>
+      <Step Index="20" Name="" Code="3-20" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前FIB中心位置坐标,与客户返回坐标对比"></Step>
+      <Step Index="21" Name="" Code="3-21" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="22" Name="" Code="3-22" IsData="False" Title="设置FIB解冻" Details="设置FIB解冻:先读取状态,如果冻结状态则进行解冻"></Step>
+      <Step Index="23" Name="" Code="3-23" IsData="False" Title="拔出PT针" Details="根据样品类型决定是否撤出PT针"></Step>
 
-      <Step Index="24" Name="" Code="3-24" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大倍数"></Step>
-      <Step Index="25" Name="" Code="3-25" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、亮度、对比度"></Step>
-      <Step Index="26" Name="" Code="3-26" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-      <Step Index="27" Name="" Code="3-27" IsData="True" Title="显示照片" Tooltip="获取偏移坐标,以及偏移角度"></Step>
-      <Step Index="28" Name="" Code="3-28" IsData="False" Title="移动到切孔位置" Tooltip="根据坐标控制SEM移动到切孔位置,居中"></Step>
-      <Step Index="29" Name="" Code="3-29" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+      <Step Index="24" Name="" Code="3-24" IsData="False" Title="设置放大倍数" Details="控制SEM放大倍数"></Step>
+      <Step Index="25" Name="" Code="3-25" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、亮度、对比度"></Step>
+      <Step Index="26" Name="" Code="3-26" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+      <Step Index="27" Name="" Code="3-27" IsData="True" Title="显示照片" Details="获取偏移坐标,以及偏移角度"></Step>
+      <Step Index="28" Name="" Code="3-28" IsData="False" Title="移动到切孔位置" Details="根据坐标控制SEM移动到切孔位置,居中"></Step>
+      <Step Index="29" Name="" Code="3-29" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
 
-      <Step Index="30" Name="" Code="3-30" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大到指定参数大小范围"></Step>
-      <Step Index="31" Name="" Code="3-31" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、消像散、亮度、对比度"></Step>
-      <Step Index="32" Name="" Code="3-32" IsData="False" Title="角度补偿" Tooltip="设置SEM角度补偿"></Step>
-      <Step Index="33" Name="" Code="3-33" IsData="True" Title="保存照片" Tooltip="设置图片名称、保存图片"></Step>
-      <Step Index="34" Name="" Code="3-34" IsData="True" Title="显示照片" Tooltip="获取偏移坐标"></Step>
-      <Step Index="35" Name="" Code="3-35" IsData="False" Title="移动到分析位置" Tooltip="根据坐标控制SEM移动到分析位置"></Step>
-      <Step Index="36" Name="" Code="3-36" IsData="False" Title="验证移动准确性" Tooltip="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
+      <Step Index="30" Name="" Code="3-30" IsData="False" Title="设置放大倍数" Details="控制SEM放大到指定参数大小范围"></Step>
+      <Step Index="31" Name="" Code="3-31" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、消像散、亮度、对比度"></Step>
+      <Step Index="32" Name="" Code="3-32" IsData="False" Title="角度补偿" Details="设置SEM角度补偿"></Step>
+      <Step Index="33" Name="" Code="3-33" IsData="True" Title="保存照片" Details="设置图片名称、保存图片"></Step>
+      <Step Index="34" Name="" Code="3-34" IsData="True" Title="显示照片" Details="获取偏移坐标"></Step>
+      <Step Index="35" Name="" Code="3-35" IsData="False" Title="移动到分析位置" Details="根据坐标控制SEM移动到分析位置"></Step>
+      <Step Index="36" Name="" Code="3-36" IsData="False" Title="验证移动准确性" Details="验证移动准确性:获取当前SEM中心位置坐标,与客户返回坐标对比,验证是否移动正确"></Step>
 
-      <Step Index="37" Name="" Code="3-37" IsData="False" Title="平行校正" Tooltip="控制SEM平行校正,并记录校正前初始值"></Step>
-      <Step Index="38" Name="" Code="3-38" IsData="False" Title="设置放大倍数" Tooltip="控制SEM放大到指定参数大小范围"></Step>
-      <Step Index="39" Name="" Code="3-39" IsData="True" Title="自动对焦" Tooltip="控制SEM自动对焦、消像散、亮度、对比度"></Step>
-      <Step Index="40" Name="" Code="3-40" IsData="True" Title="拍照" Tooltip="控制SEM对分析位置拍照"></Step>
-      <Step Index="41" Name="" Code="3-41" IsData="False" Title="保存照片" Tooltip="设置图片名称、保存图片"></Step>
-      <Step Index="42" Name="" Code="3-42" IsData="False" Title="取消电子束校正并初始化" Tooltip="控制SEM取消电子束校正,回到初始值"></Step>
+      <Step Index="37" Name="" Code="3-37" IsData="False" Title="平行校正" Details="控制SEM平行校正,并记录校正前初始值"></Step>
+      <Step Index="38" Name="" Code="3-38" IsData="False" Title="设置放大倍数" Details="控制SEM放大到指定参数大小范围"></Step>
+      <Step Index="39" Name="" Code="3-39" IsData="True" Title="自动对焦" Details="控制SEM自动对焦、消像散、亮度、对比度"></Step>
+      <Step Index="40" Name="" Code="3-40" IsData="True" Title="拍照" Details="控制SEM对分析位置拍照"></Step>
+      <Step Index="41" Name="" Code="3-41" IsData="False" Title="保存照片" Details="设置图片名称、保存图片"></Step>
+      <Step Index="42" Name="" Code="3-42" IsData="False" Title="取消电子束校正并初始化" Details="控制SEM取消电子束校正,回到初始值"></Step>
 
-      <Step Index="43" Name="" Code="3-43" IsData="False" Title="传入参数" Tooltip="获取SEM Pixel Size 给客户传入参数"></Step>
-      <Step Index="44" Name="" Code="3-44" IsData="True" Title="显示照片" Tooltip="将照片传给客户,客户进行层高分析"></Step>
-      <Step Index="45" Name="" Code="3-45" IsData="False" Title="自动能谱分析" Tooltip="确定能谱位置、控制牛津打能谱、能谱分析-面扫+线扫"></Step>
-      <Step Index="46" Name="" Code="3-46" IsData="False" Title="初始化" Tooltip="多切孔进行初始化操作"></Step>
+      <Step Index="43" Name="" Code="3-43" IsData="False" Title="传入参数" Details="获取SEM Pixel Size 给客户传入参数"></Step>
+      <Step Index="44" Name="" Code="3-44" IsData="True" Title="显示照片" Details="将照片传给客户,客户进行层高分析"></Step>
+      <Step Index="45" Name="" Code="3-45" IsData="False" Title="自动能谱分析" Details="确定能谱位置、控制牛津打能谱、能谱分析-面扫+线扫"></Step>
+      <Step Index="46" Name="" Code="3-46" IsData="False" Title="初始化" Details="多切孔进行初始化操作"></Step>
     </MeasureFlow>
 </MeasureList>

+ 27 - 12
HOZProject/UserControls/UCTimeLine.cs

@@ -118,7 +118,7 @@ namespace HOZProject
         /// <summary>
         /// The items
         /// </summary>
-        TimeLineItem[] items;
+        public TimeLineItem[] items;
 
         /// <summary>
         /// Gets or sets the items.
@@ -137,7 +137,7 @@ namespace HOZProject
         /// <summary>
         /// Initializes a new instance of the <see cref="UCTimeLine"/> class.
         /// </summary>
-        public UCTimeLine()
+        public UCTimeLine(TimeLineItem[] tlItem)
         {
             this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
             this.SetStyle(ControlStyles.DoubleBuffer, true);
@@ -146,15 +146,15 @@ namespace HOZProject
             this.SetStyle(ControlStyles.SupportsTransparentBackColor, true);
             this.SetStyle(ControlStyles.UserPaint, true);
             InitializeComponent();
-            items = new TimeLineItem[4];
-            for (int i = 0; i < 4; i++)
-            {
-                items[i] = new TimeLineItem()
-                {
-                    Title = DateTime.Now.AddMonths(-1 * (3 - i)).ToString("yyyy年MM月"),
-                    Details = DateTime.Now.AddMonths(-1 * (3 - i)).ToString("yyyy年MM月")
-                };
-            }
+            items = tlItem;
+            //for (int i = 0; i < 4; i++)
+            //{
+            //    items[i] = new TimeLineItem()
+            //    {
+            //        Title = DateTime.Now.AddMonths(-1 * (3 - i)).ToString("yyyy年MM月"),
+            //        Details = DateTime.Now.AddMonths(-1 * (3 - i)).ToString("yyyy年MM月")
+            //    };
+            //}
             ReloadItems();
 
         }
@@ -162,7 +162,7 @@ namespace HOZProject
         /// <summary>
         /// Reloads the items.
         /// </summary>
-        private void ReloadItems()
+        public void ReloadItems()
         {
             try
             {
@@ -265,5 +265,20 @@ namespace HOZProject
         /// </summary>
         /// <value>The details.</value>
         public string Details { get; set; }
+        /// <summary>
+        /// Gets or sets the Code.
+        /// </summary>
+        /// <value>The Code.</value>
+        public string Code { get; set; }
+        /// <summary>
+        /// Gets or sets the State.
+        /// </summary>
+        /// <value>The State.</value>
+        public int State { get; set; }
+        /// <summary>
+        /// Gets or sets the IsData.
+        /// </summary>
+        /// <value>The IsData.</value>
+        public bool IsData { get; set; }
     }
 }

+ 1 - 9
HOZProject/UserControls/UControl_CutHole.cs

@@ -61,17 +61,9 @@ namespace HOZProject
             ClearProcessControls();
             //显示切孔参数信息
             UControl_ParaInfo uControl_ParaInfo = new UControl_ParaInfo(FormHOZMainObject);
-            //UCTimeLine uControl_ParaInfo = new UCTimeLine();
+            
             FormHOZMainObject.plProcess.Width = uControl_ParaInfo.Width;
             FormHOZMainObject.plProcess.Height = uControl_ParaInfo.Height;
-            //if ((this.Location.Y + uControl_ParaInfo.Height) > FormHOZMainObject.Height)
-            //{
-            //    uControl_ParaInfo.Location = new Point(this.Left, this.Bottom - this.Top);
-            //}
-            //else
-            //{
-            //    uControl_ParaInfo.Location = new Point(this.Location.X, this.Location.Y);
-            //}
             List<CutHole> cutHoleList = FormHOZMainObject.m_MeasureFile.ListCutHole;
             foreach (CutHole cutHoleItem in cutHoleList)
             {

+ 14 - 0
HOZProject/UserControls/UControl_ParaInfo.Designer.cs

@@ -61,6 +61,7 @@
             this.progressBar1 = new System.Windows.Forms.ProgressBar();
             this.panel4 = new System.Windows.Forms.Panel();
             this.label8 = new System.Windows.Forms.Label();
+            this.plTimeLine = new System.Windows.Forms.Panel();
             this.panel1.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.pbClose)).BeginInit();
             this.plMeasureFlow.SuspendLayout();
@@ -115,6 +116,8 @@
             // CkIsSwitch
             // 
             this.CkIsSwitch.AutoSize = true;
+            this.CkIsSwitch.Checked = true;
+            this.CkIsSwitch.CheckState = System.Windows.Forms.CheckState.Checked;
             this.CkIsSwitch.Location = new System.Drawing.Point(9, 9);
             this.CkIsSwitch.Name = "CkIsSwitch";
             this.CkIsSwitch.Size = new System.Drawing.Size(15, 14);
@@ -318,6 +321,7 @@
             // 
             // plMeasureFlow
             // 
+            this.plMeasureFlow.Controls.Add(this.plTimeLine);
             this.plMeasureFlow.Controls.Add(this.lvMeasureFlow);
             this.plMeasureFlow.Controls.Add(this.panel3);
             this.plMeasureFlow.Controls.Add(this.panel4);
@@ -349,6 +353,7 @@
             this.lvMeasureFlow.TabStop = false;
             this.lvMeasureFlow.UseCompatibleStateImageBehavior = false;
             this.lvMeasureFlow.View = System.Windows.Forms.View.List;
+            this.lvMeasureFlow.Visible = false;
             // 
             // imageList1
             // 
@@ -412,6 +417,14 @@
             this.label8.TabIndex = 3;
             this.label8.Text = "XXXX";
             // 
+            // plTimeLine
+            // 
+            this.plTimeLine.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.plTimeLine.Location = new System.Drawing.Point(0, 30);
+            this.plTimeLine.Name = "plTimeLine";
+            this.plTimeLine.Size = new System.Drawing.Size(345, 383);
+            this.plTimeLine.TabIndex = 8;
+            // 
             // UControl_ParaInfo
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
@@ -486,5 +499,6 @@
         private System.Windows.Forms.Panel panel4;
         private System.Windows.Forms.Label label8;
         private System.Windows.Forms.PictureBox pbClose;
+        private System.Windows.Forms.Panel plTimeLine;
     }
 }

+ 40 - 4
HOZProject/UserControls/UControl_ParaInfo.cs

@@ -8,6 +8,8 @@ using System.Text;
 using System.Threading.Tasks;
 using System.Windows.Forms;
 using MeasureData;
+using FileManager;
+using System.Xml;
 
 namespace HOZProject
 {
@@ -44,6 +46,7 @@ namespace HOZProject
         {
             InitializeComponent();
             FormHOZMainObject = formHOZ;
+            ShowMeasureFlow("1");
         }
 
         private void btnClose_Click(object sender, EventArgs e)
@@ -66,11 +69,14 @@ namespace HOZProject
             }
         }
 
-        public void ShowUCTimeLine()
+        public void ShowUCTimeLine(TimeLineItem[] tlItem)
         {
-            UCTimeLine uControl_ParaInfo = new UCTimeLine();
-            uControl_ParaInfo.Dock = DockStyle.Fill;
-            plMeasureFlow.Controls.Add(uControl_ParaInfo);
+            if (plTimeLine.Controls.Count == 0)
+            {
+                UCTimeLine uCTimeLine = new UCTimeLine(tlItem);
+                uCTimeLine.Dock = DockStyle.Fill;
+                plTimeLine.Controls.Add(uCTimeLine);
+            }
         }
 
         /// <summary>
@@ -99,7 +105,37 @@ namespace HOZProject
         /// <param name="flowCode"></param>
         private void ShowMeasureFlow(string flowCode)
         {
+            TimeLineItem[]  tlItem = GetMeasureFlowStructInfo(flowCode);
+            if (tlItem != null)
+            {
+                ShowUCTimeLine(tlItem);
+            }
+        }
+        private TimeLineItem[] GetMeasureFlowStructInfo(string MeasureCode)
+        {
+            string xmlfullname = Application.StartupPath+ @"\MeasureXML\MeasureStructXml.xml";
+            XmlNodeList nodeList = XmlManager.GetXmlMeasureFlowNodeInfo(xmlfullname, MeasureCode);
+            if (nodeList != null)
+            {
+                return XmlConvertTimeListItem(nodeList);
+            }
+            return null;
+        }
 
+        private TimeLineItem[] XmlConvertTimeListItem(XmlNodeList nodeList)
+        {
+            TimeLineItem[] timeLineItem = new TimeLineItem[nodeList.Count];
+            for (int i = 0; i < nodeList.Count; i++)
+            {
+                TimeLineItem tlItem = new TimeLineItem();
+                tlItem.Details = nodeList[i].Attributes["Details"].Value;
+                tlItem.Code = nodeList[i].Attributes["Code"].Value;
+                tlItem.State = 0;
+                tlItem.Title = nodeList[i].Attributes["Title"].Value;
+                tlItem.IsData = Convert.ToBoolean(nodeList[i].Attributes["IsData"].Value);
+                timeLineItem[i] = tlItem;
+            }
+            return timeLineItem;
         }
     }
 }

+ 1 - 1
HOZProject/UserControls/UControl_ParaInfo.resx

@@ -125,7 +125,7 @@
         AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
         LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAS
-        GAAAAk1TRnQBSQFMAgEBBQEAAUABAAFAAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+        GAAAAk1TRnQBSQFMAgEBBQEAAUgBAAFIAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
         AwABgAMAAUADAAEBAQABCAYAASAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
         AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
         AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA