C# winform 不同的窗体对同一XML文件进行读取

对数据进行写入

 

 DataTable dingxing = new DataTable();

     dingxing.Columns.Add("checker");

     dingxing.Columns.Add("checkmac");

     dingxing.Columns.Add("weixie");

     dingxing.Columns.Add("luobu");

     dingxing.Columns.Add("point");

     dingxing.Columns.Add("view_error");

     dingxing.Columns.Add("mater_lock");

     dingxing.Columns.Add("lable_num");

 

     DataRow newRow = dingxing.NewRow();

     dingxing.Rows.Add(newRow);

     dingxing.Rows[dingxing.Rows.Count - 1][0] = this.checkmac.Text;

     dingxing.Rows[dingxing.Rows.Count - 1][1] = this.checker.Text;

     dingxing.Rows[dingxing.Rows.Count - 1][2] = this.weixie.Text;

     dingxing.Rows[dingxing.Rows.Count - 1][3] = this.luobu.Text;

     dingxing.Rows[dingxing.Rows.Count - 1][4] = this.point.Text;

            string m_e = string.Empty;          

            if (this.view_error.Checked == true)

            {

                m_e = "1";

            }

            else

            {

                m_e = "0";

            }

            dingxing.Rows[dingxing.Rows.Count - 1][5] = m_e;//是否显示错误

 

            string m_l = string.Empty;

            if (this.mater_lock.Checked == true)

            {

                m_l = "1";

            }

            else

            {

                m_l = "0";

            }

            dingxing.Rows[dingxing.Rows.Count - 1][6] = m_l;//是否支持验布

            dingxing.Rows[dingxing.Rows.Count - 1][7] = this.lable_num.Text;

 

            DataSet ds = new DataSet();

            ds.Tables.Add(dingxing);

            ds.WriteXml(@"txt\dingxing.xml");

 

1)首先新建一个DataTable设定好行或者列的字段名

2)然后根据字段插入数据,依据行列下标来确定位置

3)新建一个DataSettable放入DataSet,绑定值。

4)WriteXml方法写入目标文件

 

对数据进行读取

DataSet ds = new DataSet();

      ds.ReadXml(@"txt\dingxing.xml");

      for (int i = 0; i < ds.Tables[0].Rows.Count; i++)

      {

       this.checkmac.Text = ds.Tables[0].Rows[i][0].ToString();

       this.checker.Text = ds.Tables[0].Rows[i][1].ToString();

       this.weixie.Text = ds.Tables[0].Rows[i][2].ToString();

       this.luobu.Text = ds.Tables[0].Rows[i][3].ToString();

       this.point.Text = ds.Tables[0].Rows[i][4].ToString();

 

       this.view_error.Checked = false;    // 是否显示错误     

                v_e = ds.Tables[0].Rows[i][5].ToString();

                if (v_e.Equals("1"))

                {

                    this.view_error.Checked = true;

                }

 

                string m_l = string.Empty;     // 是否支持验布

                this.mater_lock.Checked = false;

                m_l = ds.Tables[0].Rows[i][6].ToString();

                if (m_l.Equals("1"))

                {

                    this.mater_lock.Checked = true;

                }

                this.lable_num.Text = ds.Tables[0].Rows[i][7].ToString();//标签

            }

 

1)新建DataSet工作簿

2)读取目标文件

3)遍历table中的数据,这里是根据行数遍历

4)将遍历数据赋值给各个TextBox

 

(如果是不同的winform之间对同一个xml文件进行读写,用上述方法的话,只有当读写信息完全相同时才可以,因为每次将数据写入都是新建一个xml文件,会覆盖之前的数据。当然也可以强行使用,将多余的用不到的TextBox隐藏,但是这种方式还是会造成代码的冗余,运行时操作系统线程资源会被循环占用,数据量小的话也无所谓)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值