Я хочу переопределить родительский (сеточный) текст данных в одной из дочерних панелей (стековая панель),
так что любое обновление в любой из стековых панелей, XML-файл будет обновляться соответствующим образом.
Изначально у меня был атрибут XPath = "/ Data / MB" в XmlDataProvider. Так что с этим переплетом только в текстовых полях 5 и 6 все прошло успешно.
Наконец то, что я сделал, дано ниже. Это отлично работает.
<Grid>
<Grid.DataContext>
<XmlDataProvider x:Name="Credentials" Source="Credentials.xml"/>
</Grid.DataContext>
<StackPanel>
<TextBox Height="23" Name="textBox5" Width="188" Text="{Binding XPath=/Credentials/MessageBroker/Hostname}" />
<TextBox Height="23" Name="textBox6" Width="188" Text="{Binding XPath=/Credentials/MessageBroker/Port}"/>
</StackPanel>
<StackPanel>
<TextBox Height="23" Name="textBox9" Width="188" Text="{Binding XPath=/Credentials/Database/Server}" />
<TextBox Height="23" Name="textBox10" Width="188" Text="{Binding XPath=/Credentials/Database/Password}"/>
</StackPanel>
</Grid>
Вот Credentials.xml
<?xml version="1.0" encoding="utf-8"?>
<Credentials>
<MB>
<Hostname>145.111.227.222</Hostname>
<Port>5672</Port>
<UserName>Admin</UserName>
<Password>Admin</Password>
</MB>
<Database>
<Server>145.111.227.234</Server>
<UserID>Administrator</UserID>
<Password>password</Password>
</Database>
Есть ли лучший способ сделать это?
Пожалуйста, дайте мне знать.