0
Я использую Datagrid в WPF и DataGridComboBoxColumn. Вы можете найти код ниже:DataGridComboBoxColumn не обновляет модель WPF
<DataGrid>...
<DataGridComboBoxColumn Header="Category" Width="200"
SelectedValueBinding="{Binding SelectedCategory, UpdateSourceTrigger=PropertyChanged}"
DisplayMemberPath="CategoryName"
SelectedValuePath="CategoryID">
<DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding CategoriesList}"></Setter>
</Style>
</DataGridComboBoxColumn.ElementStyle>
<DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding CategoriesList}"></Setter>
</Style>
</DataGridComboBoxColumn.EditingElementStyle>
</DataGridComboBoxColumn>
Модель следующим образом:
public CategoryModel SelectedCategory { get; set; }
public ObservableCollection<CategoryModel> CategoriesList
{
get;
set;
}
Теперь, когда я когда-либо изменить выбор в выпадающем списке он показывает красную границу, не в силах зафиксировать изменения к источнику.
Да, я получаю несоответствие типов. Но в чем причина несоответствия типов. И как обновить модель при изменении выбора? –
Эй, спасибо Флориан, я только что получил решение, я заменил SelectedValueBinding на SelectedItemBinding, и он работает. –
Рад, что это сработало ... есть слишком много атрибутов :) –