Esempio n. 1
0
 //更新数据
 /// <summary>
 /// 更新数据
 /// </summary>
 /// <param name="isRead">是从xml读还是写入xml</param>
 /// <param name="index_a">第几个工序,从1起</param>
 public void UpdateData(bool isRead, int index_a)
 {
     if (isRead)
     {
         //读xml到控件
         s_value = XML3DPPM.GetGongxu_Jianyan_Value(index_a, XmlFile);
         //工序属性
         dgvGXSX[1, 0].Value = s_value.gongxuhao;
         dgvGXSX[1, 1].Value = s_value.gongxumingcheng;
         dgvGXSX[1, 2].Value = s_value.shebei;
         dgvGXSX[1, 3].Value = s_value.jiamoju;
         dgvGXSX[1, 4].Value = s_value.jizhun;
         dgvGXSX[1, 5].Value = s_value.yingdu;
         dgvGXSX[1, 6].Value = s_value.lingjianjiaofu;
         dgvGXSX[1, 7].Value = s_value.zhuangjishiyong;
         chkGJGX.CheckState = s_value.guanjiangongxu ? CheckState.Checked : CheckState.Unchecked;
         //外观检查
         dgvWGJC.Rows.Clear();
         for (int i = 0; i < s_value.WGJCs.Count; i++)
         {
             dgvWGJC.Rows.Add();
             dgvWGJC[1, i].Value = s_value.WGJCs[i];
         }
         //尺寸检查
         dgvCCJC.Rows.Clear();
         for (int i = 0; i < s_value.CCJCs.Count; i++)
         {
             dgvCCJC.Rows.Add();
             dgvCCJC[1, i].Value = s_value.CCJCs[i].neirong;
             dgvCCJC[2, i].Value = s_value.CCJCs[i].liangju;
             dgvCCJC[3, i].Value = s_value.CCJCs[i].beizhu;
         }
         //技术条件
         dgvJSTJ.Rows.Clear();
         for (int i = 0; i < s_value.JSTJs.Count; i++)
         {
             dgvJSTJ.Rows.Add();
             dgvJSTJ[1, i].Value = s_value.JSTJs[i].neirong;
             dgvJSTJ[2, i].Value = s_value.JSTJs[i].liangju;
             dgvJSTJ[3, i].Value = s_value.JSTJs[i].beizhu;
         }
         //附注
         dgvFZ.Rows.Clear();
         for (int i = 0; i < s_value.FZs.Count; i++)
         {
             dgvFZ.Rows.Add();
             dgvFZ[1, i].Value = s_value.FZs[i];
         }
     }
     else
     {
         //写入xml
         s_value = new S_Gongxu_Jianyan_Value();
         s_value.WGJCs = new List<string>(0);
         s_value.CCJCs = new List<S_CCJC>(0);
         s_value.JSTJs = new List<S_JSTJ>(0);
         s_value.FZs = new List<string>(0);
         //工序属性
         dgvGXSX.EndEdit();
         s_value.gongxuhao = (string)dgvGXSX[1, 0].Value;
         s_value.gongxumingcheng = (string)dgvGXSX[1, 1].Value;
         s_value.shebei = (string)dgvGXSX[1, 2].Value;
         s_value.jiamoju = (string)dgvGXSX[1, 3].Value;
         s_value.jizhun = (string)dgvGXSX[1, 4].Value;
         s_value.yingdu = (string)dgvGXSX[1, 5].Value;
         s_value.lingjianjiaofu = (string)dgvGXSX[1, 6].Value;
         s_value.zhuangjishiyong = (string)dgvGXSX[1, 7].Value;
         s_value.guanjiangongxu = chkGJGX.CheckState == CheckState.Checked;
         //外观检查
         dgvWGJC.EndEdit();
         foreach (DataGridViewRow row in dgvWGJC.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_value.WGJCs.Add((string)row.Cells[1].Value);
             }
         }
         //尺寸检查
         dgvCCJC.EndEdit();
         S_CCJC s_ccjc = new S_CCJC();
         foreach (DataGridViewRow row in dgvCCJC.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_ccjc.neirong = (string)row.Cells[1].Value;
                 s_ccjc.liangju = (string)row.Cells[2].Value;
                 s_ccjc.beizhu = (string)row.Cells[3].Value;
                 s_value.CCJCs.Add(s_ccjc);
             }
         }
         //技术条件
         dgvJSTJ.EndEdit();
         S_JSTJ s_jstj = new S_JSTJ();
         foreach (DataGridViewRow row in dgvJSTJ.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_jstj.neirong = (string)row.Cells[1].Value;
                 s_jstj.liangju = (string)row.Cells[2].Value;
                 s_jstj.beizhu = (string)row.Cells[3].Value;
                 s_value.JSTJs.Add(s_jstj);
             }
         }
         //附注
         dgvFZ.EndEdit();
         foreach (DataGridViewRow row in dgvFZ.Rows)
         {
             if (!row.IsNewRow)
             {
                 s_value.FZs.Add((string)row.Cells[1].Value);
             }
         }
         XML3DPPM.SetGongxu_Jianyan_Value(index_a, s_value, XmlFile);
     }
 }
Esempio n. 2
0
    //�õ����鹤��ֵ��
    /// <summary>
    /// �õ����鹤��ֵ��
    /// </summary>
    /// <param name="a">�ڼ������� ��1��</param>
    /// <param name="xmlfile">����xml</param>
    /// <returns>���鹤��ֵ��</returns>
    public static S_Gongxu_Jianyan_Value GetGongxu_Jianyan_Value(int a,string xmlfile)
    {
        S_Gongxu_Jianyan_Value s_value = new S_Gongxu_Jianyan_Value();
        s_value.WGJCs = new List<string>(0);
        s_value.CCJCs = new List<S_CCJC>(0);
        s_value.JSTJs = new List<S_JSTJ>(0);
        s_value.FZs = new List<string>(0);
        try
        {

            XmlDocument mydoc = new XmlDocument();
            mydoc.Load(xmlfile);
            string path = "/SYS_3DPPM/Gongyi/Gongxu[" + a.ToString() + "]";
            XmlElement xe = (XmlElement)mydoc.SelectSingleNode(path);
            if (xe.GetAttribute("Type") != E_GongyiNodeType.Gongxu_Jianyan.ToString())
            {
                NXFun.MessageBox("��ѯ������������ʵ���Ͳ�ƥ�䣡");
                return s_value;
            }
            XmlElement infor = xe.SelectSingleNode("Information") as XmlElement;
            //��������
            s_value.gongxuhao = infor.GetAttribute("gongxuhao");
            s_value.gongxumingcheng = infor.GetAttribute("gongxumingcheng");
            s_value.shebei = infor.GetAttribute("shebei");
            s_value.jiamoju = infor.GetAttribute("jiamoju");
            s_value.jizhun = infor.GetAttribute("jizhun");
            s_value.yingdu = infor.GetAttribute("yingdu");
            s_value.lingjianjiaofu = infor.GetAttribute("lingjianjiaofu");
            s_value.zhuangjishiyong = infor.GetAttribute("zhuangjishiyong");
            s_value.guanjiangongxu = NXFun.string2bool(infor.GetAttribute("guanjiangongxu"));
            //��ۼ��
            XmlNodeList wgjc_nodes = infor.SelectNodes("WGJC/wgjc");
            foreach (XmlElement wgjc_node in wgjc_nodes)
            {
                s_value.WGJCs.Add(wgjc_node.GetAttribute("neirong"));
            }
            //�ߴ���
            XmlNodeList ccjc_nodes = infor.SelectNodes("CCJC/ccjc");
            foreach (XmlElement ccjc_node in ccjc_nodes)
            {
                S_CCJC s_ccjc = new S_CCJC();
                s_ccjc.neirong = ccjc_node.GetAttribute("neirong");
                s_ccjc.liangju = ccjc_node.GetAttribute("liangju");
                s_ccjc.beizhu = ccjc_node.GetAttribute("beizhu");
                s_value.CCJCs.Add(s_ccjc);
            }
            //��������
            XmlNodeList jstj_nodes = infor.SelectNodes("JSTJ/jstj");
            foreach (XmlElement jstj_node in jstj_nodes)
            {
                S_JSTJ s_jstj = new S_JSTJ();
                s_jstj.neirong = jstj_node.GetAttribute("neirong");
                s_jstj.liangju = jstj_node.GetAttribute("liangju");
                s_jstj.beizhu = jstj_node.GetAttribute("beizhu");
                s_value.JSTJs.Add(s_jstj);
            }
            //��ע
            XmlNodeList fz_nodes = infor.SelectNodes("FZ/fz");
            foreach (XmlElement fz_node in fz_nodes)
            {
                s_value.FZs.Add(fz_node.GetAttribute("neirong"));
            }
            return s_value;
        }
        catch (System.Exception ex)
        {
            NXFun.MessageBox(ex.Message);
            return s_value;
        }
    }