zoukankan      html  css  js  c++  java
  • datagridview绑定xml

      //加载描述的XML
            private bool loadXML()
            {
                
               //创建DataTable对象dt
               DataTable dt = new DataTable("clientXML");
               //创建列
               dt.Columns.Add(new DataColumn("IP", typeof(string)));
               dt.Columns.Add(new DataColumn("端口", typeof(string)));
               dt.Columns.Add(new DataColumn("事件", typeof(string)));
               dt.Columns.Add(new DataColumn("时间", typeof(string)));
               dt.Columns.Add(new DataColumn("备注1", typeof(string)));
               dt.Columns.Add(new DataColumn("备注2", typeof(string)));
               
    
                //装载文档
                XmlDocument XmlDoc = new XmlDocument();
                XmlDoc.Load("..\..\ClientStatus.xml");
                //获取跟节点
                XmlNode xn = XmlDoc.SelectSingleNode("client");
                //获取子节点集合
                XmlNodeList xnl = xn.ChildNodes;
                foreach (XmlNode xn_temp in xnl)
                {
                    //将节点转为元素,以便得到节点的属性
                    XmlElement xe = (XmlElement)xn_temp;
                    DataRow row = dt.NewRow();
                    row["IP"] = xe.GetAttribute("ip").ToString();
                    row["端口"] = xe.GetAttribute("port").ToString();
                    row["事件"] = xe.GetAttribute("event").ToString();
                    row["时间"] = xe.GetAttribute("datetime").ToString();
                    row["备注1"] = xe.GetAttribute("memo1").ToString();
                    row["备注2"] = xe.GetAttribute("memo2").ToString();
                    dt.Rows.Add(row);
                }
                DataSet ds = new DataSet("client");
                ds.Tables.Add(dt);
    
                this.dataGridView1.DataSource = ds;
                this.dataGridView1.DataMember = ds.Tables[0].TableName;
    
                return true;
    
            }
    <?xml version="1.0" encoding="utf-8" ?>
    <client>
      <point ip="127.0.0.1" port="40940">
        <event>发送链路请求帧 </event>
        <datetime> 207.9.13 19:14</datetime>
        <memo1>尚未回复 </memo1>
        <memo2></memo2>
      </point>
    
      <point ip="197.0.0.1" port="940">
        <event>回复链路请求帧 </event>
        <datetime> 2017.9.13 19:14</datetime>
        <memo1>尚未回复2 </memo1>
        <memo2>无2</memo2>
      </point>
    </client>
  • 相关阅读:
    Git failed with a fatal error. Authentication failed
    HttpClient 获取json,即使返回状态不成功也返回json
    win10恢复Windows Media Player
    .NET Core部署到linux(CentOS)最全解决方案
    EasyNetQ 相关问题和解决方法
    RabbitMQ And EasyNetQ
    打爆你的 CPU
    通过代码实现 OutOfMemory
    如何写一段死锁代码
    docker 容器(container)使用ssh服务登录一段时间无操作后自动断开问题解决
  • 原文地址:https://www.cnblogs.com/qqhfeng/p/7532561.html
Copyright © 2011-2022 走看看