- 方法一:
- DataSet xmlDs = new DataSet();
- xmlDs.ReadXml("C:\\Users\\YIFENG\\Desktop\\heng\\start.xml");
- this.dataGridView1.DataSource = xmlDs.Tables[0];
这个方法简单,但是不能自定义列名,只能用xml节点名做为烈名。
方法二:
这个方法可以自定义列名,思路是先把XML文件变成表放到数据集中,在把datagridview绑定到数据集上。
获取某个元素时常用这个:
- DataTable dt = new DataTable("fcstXML"); //建立一张叫做fcstXML的表
- //创建列
- dt.Columns.Add(new DataColumn("编号",typeof(int)));
- dt.Columns.Add(new DataColumn("名称",typeof(string)));
- dt.Columns.Add(new DataColumn("应用程序",typeof(string)));
- dt.Columns.Add(new DataColumn("开始bak",typeof(string)));
- ///导入xml文档
- XElement doc = XElement.Load("C:\\Users\\YIFENG\\Desktop\\heng\\start.xml");
- var node = from n in doc.Elements("Start") select n;
- ///遍历<centerInfo>的结点
- foreach (var xnode in node)
- { ///创建一个新行
- DataRow row = dt.NewRow();
- ///读取结点数据,并填充数据行
- row["编号"] = xnode.Element("Number").Value;
- row["名称"] = xnode.Element("Title").Value;
- row["应用程序"] = xnode.Element("NetAdd").Value;
- row["开始bak"] = xnode.Element("StartBak").Value;
- dt.Rows.Add(row);
- }
- ///创建DataSet对象ds
- DataSet ds = new DataSet("dfdf");
- ds.Tables.Add(dt);
- dataGridView1.DataSource = ds.Tables[0];
- XElement xelement = XElement.Load("..\\..\\Employees.xml");
- IEnumerable<XElement> employees = xelement.Elements();