У меня есть следующий Xaml (Silverlight, но это не должно иметь значения):
<ListBox x:Name="Results"> ... </ListBox>
<StackPanel DataContext="{Binding ElementName=Results, Path='SelectedItem.Attributes'}">
<TextBlock Text="{Binding ElementName=Results, Path='SelectedItem.Attributes[ID]'}" />
<TextBlock Text="{Binding '[ID]'}" />
</StackPanel>
Когда я заполняю ListBox, второй TextBlock заполняется, а первый TextBlock - нет. Когда я выбираю любой элемент из списка, первый текстовый блок заполняется, но второй не меняется.
Я предполагаю, что мне чего-то не хватает, чтобы сообщить DataContext StackPanel, что он должен обновляться каждый раз, когда я изменяю SelectedItem в своем ListBox, но я не знаю, что мне нужно делать.
В идеале я бы не хотел связывать весь путь для каждого из моих текстовых блоков (их будет несколько).