현재 xml 파일을 리소스로 추가하려면 다음 XAML 코드를 사용하고 있습니다.리소스 추가 방법 : xml 파일
<XmlDataProvider x:Key="MyData" Source="D:\myfile.xml" XPath="Books/Book" />
이제이 이식성을 높이기 위해 % appdata % 폴더의 myfile.xml을 사용하고 싶습니다. 분명히 Source = "% appdata % \ myfile.xml"을 사용하면 XAML에서 "%"문자가 허용되지 않으므로이 작동하지 않습니다.
따라서이 리소스를 프로그래밍 방식으로 기본 윈도우 코드에 추가하고 싶습니다. 나는 시도했다 :
public MainWindow()
{
this.Resources.Add("MyData", "D:\\myfile.xml");
InitializeComponent();
}
그러나 XPath = ""Resources.xls "속성을 사용할 수 없다. 따라서 응용 프로그램이 제대로 작동하지 않는다.
이 속성을 설정하는 방법이 있습니까? 아니면 내가 잘못하고있는거야?
이것에 대한 Google 답변이 없습니다.
대단히 감사합니다.
감사합니다. Mattias, 제 2 해결 방법과 함께 작동합니다. 방금 변경해야만했습니다. Uri booksfile_path = new Uri (Environment.GetFolderPath (Environment.SpecialFolder.ApplicationData) + "\\ myfile.xml"); .Source 메서드는 문자열이 아니라 Uri를 대신 받아들입니다. –
한 가지 사실은이 구현에서 이제는 거의 5 초와 같이 XML 콘텐츠 (목록 상자에 표시 함)를로드하는 데 더 많은 시간이 걸리는 것입니다. 전에 1 초 같았습니다. 이걸 단축하기 위해 내가 할 수있는 일 이라니? –
나는 kkow를하지 않습니다 ... 그러나, 나는 다른 사용자가 더 많은 참고를 위해 당신의 코드로 나의 게시물을 수정하고 있습니다. –