У меня есть текстовое поле WPF с привязкой к текстовому тексту данных.
<TextBox Grid.Column="1" Grid.Row="4" Text="{Binding Path=Density,UpdateSourceTrigger=PropertyChanged}"/>
Я установил datacontext в коде контейнерного элемента управления текстового поля (в данном случае tabItem)
tiMaterial.DataContext = _materials[0];
У меня также есть список с другими материалами. Я хочу обновить текстовое поле, когда выбран другой материал, поэтому я кодирую:
private void lbMaterials_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
_material = (Material) lbMaterials.SelectedValue;
tiMaterial.DataContext = _material;
}
Класс Material
реализует интерфейс INotifyPropertyChanged
. У меня работает двустороннее обновление, просто когда я изменяю DataContext, привязки кажутся потерянными.
Чего мне не хватает?