首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UWP GridView .xml数据绑定[VB.NET]-

UWP GridView .xml数据绑定[VB.NET]-
EN

Stack Overflow用户
提问于 2018-09-29 03:45:22
回答 2查看 119关注 0票数 0

如何将下面的简单.xml绑定到uwp中的gridview/listview?

代码语言:javascript
复制
<TOOLS>

  <TOOL>
    <ID>0001</ID>
    <CATEGORY>PIPING</CATEGORY>
    <NAME>Straight Pipe Under internal Pressure (ASME B31.3 par.304.1.2).</NAME>
    <HINT>HOOP STRESS, CIRCUMFERENTIAL STRESS</HINT>
  </TOOL>

  <TOOL>
    <ID>0002</ID>
    <CATEGORY>PIPING</CATEGORY>
    <NAME>Mitered Segments of Pipe (ASME B31.3 par.304.2.3).</NAME>
    <HINT></HINT>
  </TOOL>

</TOOLS>

非常感谢

EN

回答 2

Stack Overflow用户

发布于 2018-09-29 03:52:31

虽然不能直接绑定XML文件,但您可以先将此XML反序列化为普通类,然后再将其绑定为普通数据。如下所示的简单类:

代码语言:javascript
复制
class Tool
{
   public int Id {get;set;}
   public string Category {get;set;}
   public string Name {get;set;}
}

这应该就是你所需要的。您可以通过.NET提供的多种方法中的一种手动遍历XML文档来反序列化文件,也可以使用this SO answer中看到的属性自动反序列化。

最后,您将得到一个Tool实例的集合,并将其绑定到控件的ItemsSource

代码语言:javascript
复制
<GridView ItemsSource="{x:Bind Data, Mode=OneWay}" />

要正确显示它,您还需要使用ItemTemplate。更多关于这个的信息。也有很多关于这方面的教程,例如here

票数 0
EN

Stack Overflow用户

发布于 2018-09-29 16:02:22

我会使用xml linq将结果放入datatable中,然后绑定到表

代码语言:javascript
复制
Imports System.Xml
Imports System.Xml.Linq
Imports System.Data

Module Module1
    Const FILENAME As String = "c:\temp\test.xml"
    Sub Main()
        Dim dt As New DataTable
        dt.Columns.Add("ID", GetType(String))
        dt.Columns.Add("CATEGORY", GetType(String))
        dt.Columns.Add("NAME", GetType(String))
        dt.Columns.Add("HINT", GetType(String))

        Dim doc As XDocument = XDocument.Load(FILENAME)

        For Each tool In doc.Descendants("TOOL")
            dt.Rows.Add(New Object() {tool.Element("ID").Value, tool.Element("CATEGORY").Value, tool.Element("NAME").Value, tool.Element("HINT").Value})
        Next tool

    End Sub

End Module
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52561811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档