Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF数据网格绑定到xml_C#_Wpf_Xml_Data Binding_Datagrid - Fatal编程技术网

C# WPF数据网格绑定到xml

C# WPF数据网格绑定到xml,c#,wpf,xml,data-binding,datagrid,C#,Wpf,Xml,Data Binding,Datagrid,我想以编程方式将包含从数据库中取出的一些结果的XML文件绑定到我的Datagrid。我的XML看起来像: <root> <resultset> <header> <column> Col 1 </column> <column> Col 2 </column> </header> <data

我想以编程方式将包含从数据库中取出的一些结果的XML文件绑定到我的Datagrid。我的XML看起来像:

<root>
    <resultset>
        <header>
            <column> Col 1 </column>
            <column> Col 2 </column>
        </header>

        <data>
            <row>
               <field>Value field 1</field>
               <field>Value field 2</field>
            </row>
            <row>
               <field>Value field 1</field>
               <field>Value field 2</field>
            </row>
        </data>
    </resultset>
</root>

但是这并没有真正的帮助,没有任何东西显示出来,呵呵,我读过一些“路径”绑定属性,但我找不到它。

这就是你要找的吗

我认为您要做的是将ItemsSource连接到
XmlDataProvider
(您也可以在代码中创建它),并将其
XPath
设置为
/root/resultset/data/row
。然后对于可以使用的每个元素,比如说
Text={Binding XPath=./field}


我对细节有点不确定,因为我已经有一段时间没有这样做了,但希望这将为您指明正确的方向。

我想您已经有了xmldataprovider,您的Xml源名为myXMLDoc。 然后可以将xml数据绑定到WPF控件

ItemsSource="{Binding Source={StaticResource myXMLDoc}, XPath=row}}" //bind "row" elements to your control

谢谢你的回答。问题是,我希望通过编程实现这一点(由于应用程序用途/arch,无法在XAML中实现)。问题是,以编程的方式,我不能再使用绑定表达式了,这就是为什么我在所有这些属性中迷失了方向,我正在阅读一篇关于数据绑定的MSN文章,但它仍然令人困惑。(顺便说一句,wpf新手:p)哇,我不知道我能以编程方式放置表达式。。。哥们,太棒了!非常感谢你。它给了我行(但仍然空),但它比我之前,我要挖掘,以找出什么是错的更好。再次感谢您,我只想问一个问题,如何将标记绑定到datagrid头列?我试着查看mydatagrid.columns,但它是一个集合,实际上没有ItemsSource之类的东西。谢谢:)@Miloud检查一下,确实我找到了那个,它可以工作了:D谢谢男人:)。只有一件事,我的列设置正确,但我的行是空的。。如何将中的每一项映射到每一列?
ItemsSource="{Binding Source={StaticResource myXMLDoc}, XPath=row}}" //bind "row" elements to your control