//加载描述的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. Django的CBV

    CBV CBV(class base views) 就是在视图里使用类处理请求. Python是一个面向对象的编程语言,如果只用函数来开发,有很多面向对象的优点就错失了(继承.封装.多态).所以Dja ...

  2. SQL查询执行步骤

    1.总结 执行顺序 3.select ...聚合函数 from 表名 1.where ... 2.group by ... 4.having ... 5.order by ... 6.limit .. ...

  3. 自定义requestAnimationFrame帧频

    requestAnimationFrame(callback)触发的callback方法会接受一个时间戳参数,所以如果不想直接跟随浏览器系统帧频的话, 就可以利用这个时间戳参数来做到自定义帧频,做法就 ...

  4. HihoCoder1164 随机斐波那契(概率DP)

    描述 大家对斐波那契数列想必都很熟悉: a0 = 1, a1 = 1, ai = ai-1 + ai-2,(i > 1). 现在考虑如下生成的斐波那契数列: a0 = 1, ai = aj + ...

  5. HDU1496 Equations 卡时间第二题

    Consider equations having the following form: a*x1^2+b*x2^2+c*x3^2+d*x4^2=0 a, b, c, d are integers ...

  6. Page View Controllers

    Page View Controllers You use a page view controller to present content in a page-by-page manner. A ...

  7. hadoop2.2使用手册2:如何运行自带wordcount

    问题导读:1.hadoop2.x自带wordcount在什么位置?2.运行wordcount程序,需要做哪些准备? 此篇是在hadoop2完全分布式最新高可靠安装文档 hadoop2.X使用手册1:通 ...

  8. 《DSP using MATLAB》示例Example6.6

    代码: h = [1, 2, 3, 2, 1]/9; [C, B, A] = dir2fs(h) 运行结果:

  9. 【java多线程】用户线程和守护线程的区别

    java中线程分为两种类型:用户线程和守护线程.通过Thread.setDaemon(false)设置为用户线程:通过Thread.setDaemon(true)设置为守护线程.如果不设置次属性,默认 ...

  10. web 调试工具docker的安装使用

    1.   weinre 工具 docker run -d -p 8080:8080 beevelop/weinre 2. vorlonjs(不支持https)  docker run --name v ...