//加载描述的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[].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>

datagridview绑定xml的更多相关文章

  1. [WinForm] DataGridView 绑定 DT && ComboBox 列绑定 Dict

    一  需求介绍 一般像枚举类型的数据,我们在数据库里存储着诸如(1.2.3.4-)或者("001"."002"."003"-)此类,但是界面 ...

  2. C# Winform中DataGridView绑定后DataGridViewCheckBoxColumn无法显示的问题

    在控件DataGridView绑定数据源后,发现DataGridViewCheckBoxColumn不能显示当前的check值.经过一番努力,现将完整代码奉献出来,仅供参考. 错误代码: /*禁止自动 ...

  3. C# DataGridView绑定数据源的几种常见方式

    开始以前,先认识一下WinForm控件数据绑定的两种形式,简单数据绑定和复杂数据绑定. 1. 简单的数据绑定 例1 using (SqlConnection conn = new SqlConnect ...

  4. DataGridView 绑定 List

    DataGridView 绑定 List<T> 不会自动更新 正确方式是将  List<T> 设置为 BindingList<T> 即可 (双向绑定)

  5. DataGridView绑定BindingList<T>带数据排序的类

    本文章转载:http://yuyingying1986.blog.hexun.com/30905610_d.html DataGridView绑定List<T>类时候,不会自动的进行排序. ...

  6. DataGridView绑定数据源

    给DataGridView绑定数据源比較简单,方法主要有两种: 1.直接在控件属性中绑定数据源,这样的方法最简单,但它是直接连接数据库的,这样就和传DataTable的后果差点儿相同了,所以还是尽量避 ...

  7. WinForm DataGridView 绑定泛型List(List<T>)/ArrayList不显示的原因和解决

    背景:无意间遇到了一个不大不小的问题,希望对一些遇到的人有所帮助! 一.问题 WinForm DataGridView 绑定泛型List (List<T>)/ArrayList不显示,UI ...

  8. c# winform 中DataGridView绑定List<T> 不能显示数据

    遇到问题 DataGridView绑定List后,List更新后再次绑定不显示数据 datagridview 绑定数据源的时候 用List是不能显示修改内容的..要用binginglist<T& ...

  9. DataGridView绑定泛型List时,利用BindingList来实现增删查改

    DataGridView绑定泛型List时,利用BindingList来实现增删查改  一.   DataGridView绑定泛型List的种种 1.DataGridView数据绑定对比(DataTa ...

随机推荐

  1. getPropertyValue (实现 js框架中 css 的最终调用的函数)

    ,取得元素最终计算出的css 样式 var a = document.getElementById("content");    alert("style "+ ...

  2. tomcat错误:The page you tried to access (/manager/login.do) does not exist

    今天在idea上跑一个项目,所有配置都正常,其他接口测试也正常.唯独“/manage/user”接口在测试的时候后台没反应,也就是程序根本没往下走,postman测试显示如下: 浏览器范围url连接显 ...

  3. test20190308

    测试 晚上考试,是 \(SCOI\ 2016\ Day\ 2\) 的题目. 妖怪 由于之前在洛谷上用三分水过去了,就很 \(naive\) 地打了一个三分就跑了.获得 \(10\) 分好成绩. 记 \ ...

  4. js中怎么去掉数组的空值

    for(var i = 0 ;i<array.length;i++)  {              if(array[i] == "" || typeof(array[i] ...

  5. 《DSP using MATLAB》示例Example 8.14

    %% ------------------------------------------------------------------------ %% Output Info about thi ...

  6. lapis 框架安装试用

    备注:     此次安装使用的是openresty 的openresty-1.11.2.1(openresty-1.11.2.1.tar.gz,最新版本存在cjson 包的问题 )   同时对于lua ...

  7. Ant入门使用说明

    一.概述 ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发.在实际软件开发中,有很多地方可以用到ant. 开发环境: 复制代码 代码如下: S ...

  8. javascript 中的 arguments,callee.caller,apply,call 区别

    记录一下: 1.arguments是一个对象, 是函数的一个特性,只有在函数内才具有这个特性,在函数外部不用使用. 举例: function test(){   alert(typeof argume ...

  9. RK3288 指令查看LCD分辨率

    通过下面指令可以查看当前系统设置的分辨率. root@xxx:/ # cd sys/class/graphics/fb0 cd sys/class/graphics/fb0 root@xxx:/sys ...

  10. ESP8266编译过程探索

    首先看到的是为什么SDK里有一个libmain.a这样的库. 编译之后才发现原平是这样子:main函数(如果有的话)会调用我们user_init函数.user_rf_cal_sector_set函数, ...