2012-06-19 122 views
0

我有一个XML文档,我从vb.net写入到我的文件系统成功....现在我想有一个浏览按钮,然后打开&从数据导入XML返回到datalistview ...从XML文档获取数据到DataListView

我有打开的文件对话框工作,并可以从文件中读取特定的'静态'数据,但动态数据量似乎有点麻烦。任何人都可以帮我吗?

这里是我迄今:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<!--Markbook data file.--> 
<Root> 
    <Metadata> 
    <Author>first.last</Author> 
    <WriteTime>19/06/2012 9:23:28 AM</WriteTime> 
    </Metadata> 
    <Data> 
    <StudentRecord> 
     <Student>student1</Student> 
     <Mark>88</Mark> 
     <Grade>Distinction</Grade> 
    </StudentRecord> 
    <StudentRecord> 
     <Student>student2</Student> 
     <Mark>12</Mark> 
     <Grade>Participation</Grade> 
    </StudentRecord> 
    </Data> 
</Root> 

我怎么会去添加数据的每个元素的元素放入一个多datalistview。

+0

什么DataListView控制?它是可绑定的第三方或自定义web/winform控件? – adatapost

回答

2

有很多方法/方法可以在.net框架中读取/解析XML文档,但我想建议Linq-Xml

看一看这个代码片段:

Dim doc = XDocument.Load("x:\folder\file.xml") 
Dim result = From ele In doc.Root.Descendants("StudentRecord") 
       Select New With 
        { 
         .Name = ele.Element("Student").Value, 
         .Mark = ele.Element("Mark").Value, 
         .Grade = ele.Element("Grade").Value 
        } 
'Bind the List to DataGridView or other bindable control 
DataGridView1.DataSource = result.ToList()