3
我目前使用下面的XAML代码添加到我的XML文件作为一种资源:如何添加资源:XML文件
<XmlDataProvider x:Key="MyData" Source="D:\myfile.xml" XPath="Books/Book" />
现在我想用这将myfile.xml从%APPDATA %文件夹,以获得更多的便携性。很明显,使用Source =“%appdata%\ myfile.xml”不起作用,因为它似乎在XAML中不接受“%”字符。
因此,我想以编程方式在我的主窗口代码中添加此资源。我已经试过:
public MainWindow()
{
this.Resources.Add("MyData", "D:\\myfile.xml");
InitializeComponent();
}
但是当时我没有的XPath =“”可供Resources.Add方法属性,因此,应用程序无法正常工作。
有没有办法设置这个属性?还是我做错了?
没有谷歌回答这个。
非常感谢。
谢谢你Mattias,它与第二个解决方案一起工作。我只需要改变:Uri booksfile_path = new Uri(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)+“\\ myfile.xml”);因为.Source方法不接受字符串,而是接受Uri。 – 2011-04-30 13:29:43
现在有一件事,就是这个实现,它花费了更多的时间来加载我的xml内容(我将它显示在一个列表框中),就像差不多5秒钟一样。这就像1秒之前。我能做些什么来缩短这个? – 2011-04-30 13:32:05
我不kkow ...但是,我用您的代码修改我的帖子,以供其他用户进一步参考。 – 2011-04-30 14:44:18