将xml加载到datagridview [英] Load xml into datagridview
本文介绍了将xml加载到datagridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有下面的XML.但是当我尝试加载到datagridview时,它不起作用.
Hi,
I have below xml. But when I try to load into datagridview, it doesn''t work.
<Records>
<Record>
<Product>
<Column name="Serial">N110879987</Column>
<Column name="Product">QWX4T6YU</Column>
<Column name="Date">2012-08-10</Column>
</Product>
<Operations>
<Operation type="SETUP">
<Column name="TimeStamp">2012-08-10</Column>
<Column name="Status">Success</Column>
</Operation>
<Operation type="RUN">
<Column name="TimeStamp">2012-08-11</Column>
<Column name="Status">Done</Column>
</Operation>
</Operations>
</Record>
<Record>
<Product>
<Column name="Serial">N110879988</Column>
<Column name="Product">QWX4T6YU</Column>
<Column name="Date">2012-08-12</Column>
</Product>
<Operations>
<Operation type="SETUP">
<Column name="TimeStamp">2012-08-12</Column>
<Column name="Status">Success</Column>
</Operation>
<Operation type="RUN">
<Column name="TimeStamp">2012-08-12</Column>
<Column name="Status">Done</Column>
</Operation>
</Operations>
</Record>
</Records>
下面是我的代码,它不起作用..
Below is my code, it doesn''t work..
Dim dt As New DataTable
Dim newRow As DataRow
Dim ds As New DataSet()
Dim doc As New Xml.XmlDocument
doc.Load("C:\Temp\N11.xml")
Dim dt As New DataTable
Dim newRow As DataRow
dt.Columns.Add("Serial")
dt.Columns.Add("Product")
dt.Columns.Add("Date")
dt.Columns.Add("Operation")
dt.Columns.Add("TimeStamp")
dt.Columns.Add("Status")
For Each n As XmlNode In doc.SelectNodes("Records/Record/Product/Column")
newRow = dt.NewRow
newRow(n.Attributes("name").Value) = n.InnerText
For Each n1 As XmlNode In doc.SelectNodes("Records/Record/Operations/Operation")
newRow = dt.NewRow
newRow("Operation") = n1.Attributes("type").Value
For Each n2 As XmlNode In doc.SelectNodes("Records/Record/Operations/Operation[@type='" & n1.Attributes("type").Value & "']/Column")
newRow(n2.Attributes("name").Value) = n2.InnerText
Next
dt.Rows.Add(newRow)
Next
Next
DataGridView1.DataSource = dt
以下是我的空闲输出,任何人都可以帮忙吗?
Below is my idle output, can anyone help?
Serial Product Date Operation TimeStamp Status
N110879987 QWX4T6YU 8/10/2012 SETUP 8/10/2012 Success<code></code>
RUN 8/11/2012 Done
N110879988 QWX4T6YU 8/12/2012 SETUP 8/12/2012 Success
RUN 8/12/2012 Done
推荐答案
像这样
do it like this
Dim ds As New DataSet
ds.ReadXml("path of excel file")
DataGridView1.Columns.Clear()
DataGridView1.DataSource = ds.Tables(0)
尝试以下代码
try below code
string myXMLfile = @"C:\Temp\N11.xml";
DataSet ds = new DataSet();
// Create new FileStream with which to read the schema.
System.IO.FileStream fsReadXml = new System.IO.FileStream
(myXMLfile, System.IO.FileMode.Open);
try
{
ds.ReadXml(fsReadXml);
dataGrid1.DataSource = ds.Tables[0];
//dataGrid1.DataMember = "Cust";
dataGrid1.DataBind();
}
catch (Exception ex)
{
}
finally
{
fsReadXml.Close();
}
请转换为vb.net
please convert in to vb.net
这篇关于将xml加载到datagridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文