XML ファイルにバインドされた Listview があります。XML ファイルのさまざまなノードの値は、テキストボックスを使用して変更できます。リストビューの要素に直接バインドされている要素の値を変更すると、すべて正常に機能します。他の値に応じて XML ファイルの値を変更した場合に問題が発生し、XML データプロバイダーを更新してリストボックスの変更を確認する必要があります。そうすると、以前に SelectedItem が失われます。また、SelectedItem を保存して、更新後に再読み込みしようとしましたが、うまくいきませんでした。
XML データプロバイダーを更新する別の方法はありますか? または、ListView を更新するより良い方法はありますか?
Window1.xaml:
...
<Grid.DataContext>
<XmlDataProvider x:Name="VoltageData" Source="Voltages.xml" XPath="Voltages/Voltage" />
</Grid.DataContext>
...
Window1.xaml.cs:
...
xmlDoc.Save(VoltageData.Source.LocalPath);
VoltageData.Refresh();
...