//加载描述的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. Codeforces 1027E Inverse Coloring 【DP】

    Codeforces 1027E Inverse Coloring 题目链接 #include<bits/stdc++.h> using namespace std; #define N ...

  2. Object-C 中的Selector 概念

    selector可以叫做选择器,其实指的就是对象的方法,也可以理解为C语言里面的函数指针,在面向对象里面的对应概念. @selector(xxxx)的作用是找到名字为xxxx的方法.一般用于[a pe ...

  3. 【angularJS】$Scope

    $Scope Scope(作用域)是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带,用来保存AngularJS Model(模型)的对象. Scope 是一个对象,有可用的 ...

  4. [MEF]第02篇 MEF的导入导出契约

    一.演示概述此演示介绍了如何为Export指定导出的协议名和类型,以及如何为Import指定导入的协议名和类型,只有确保导出和导入的协议名和类型相匹配了,才能注入成功,否则注入就会失败.相关下载(屏幕 ...

  5. dgraph 图数据库docker-compose安装试用

    备注:    使用docker-compose进行安装   1. docker-compose.yml  version: "3" services: zero: image: d ...

  6. 如何在CentOS系统中安装配置SNMP服务

    CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,现在有一大部分服务器在使用此操作系统:SNMP(简单网络 ...

  7. ORM 查询

    ORM版学员管理系统 班级表 表结构 class Class(models.Model): id = models.AutoField(primary_key=True) # 主键 cname = m ...

  8. 中兴G718C开发者模式开启

    系统设置--关于手机--版本号,连按七次,打开开发者选项 请进入设置——连接到PC——默认连接类型——安装驱动,选择即可.然后将手机和电脑连接,打开“我的电脑”或“计算机”会弹出可移动盘符“USB D ...

  9. Fiddler+Firefox

    配置置代理了,发现还是不好用!无法抓包: 配置就是在firefox的“选项”,拉到最下面,就能够看到“网络代理”,点进去:手动代理里面输入Fiddler的代理信息(默认127.0.0.1:8888) ...

  10. 深入理解java虚拟机-第二章:java内存区域与内存泄露异常

    2.1概述: java将内存的管理(主要是回收工作),交由jvm管理,确实很省事,但是一点jvm因内存出现问题,排查起来将会很困难,为了能够成为独当一面的大牛呢,自然要了解vm是怎么去使用内存的. 2 ...