WPF-将ListView动态绑定到.xml文件

本文关键字:xml 文件 动态绑定 ListView WPF- | 更新日期: 2023-09-27 17:59:36

是否有方法(使用MVVM模式)将ListView动态绑定到xml文件?实际上,ListView绑定到一个静态路径,比如:

C:'DocumentsAndSettings'blabla'morebla'log.xml 

我需要之类的东西

AppPath'log.xml

这是我的代码:在视图中.xaml:

<ListView ItemsSource="{Binding Source={StaticResource logDataSource}, ...

在App.xaml:中

        <XmlDataProvider x:Key="logDataSource" 
                     Source="C:'DocumentsAndSettings'blabla'morebla'log.xml" 
                     d:IsDataSource="True"/>

我想要这样的东西:

        <XmlDataProvider x:Key="logDataSource" 
                     Source="AppPath'log.xml" 
                     d:IsDataSource="True"/>

提前谢谢。

WPF-将ListView动态绑定到.xml文件

为什么不使用相对路径?例如,如果您将log.xml放在项目的数据目录中,只需编写

<XmlDataProvider x:Key="logDataSource" Source="data/log.xml" />

请注意,该文件的build action应为"resource"。或者,如果是"content",则将copy to o/p directory设置为"copy always"。(在谷歌上搜索这两个的区别)

如果我把log.xml文件放在我的项目目录中,记录器库将在中写入

project/bin/debug/log.xml

而xaml绑定将在中查找log.xml

project/log.xml

我解决了将log.xml文件的属性设置为"Content"而不是"Resource"的问题。。即使我真的不知道区别:)