我有一个Datagrid和DataGridTemplateColumn,它是ComboBox
<DataTemplate x:Key="ComboBoxPackagingType">
<ComboBox SelectedItem="{Binding PackagingType.SelectedItem, Mode=TwoWay}" ItemsSource="{Binding PackagingType.ItemsSource}"/>
</DataTemplate>
...
<DataGridTemplateColumn CellTemplate="{StaticResource ComboBoxPackagingType}"/>
从列表中选择项目后,SelectedItem永远不会更改值。 我在get和set函数上设置断点,在更改DataGrid的ItemSource后停止在get函数上,但是从列表中选择Item后从不在set函数上停止。
为什么?
答案 0 :(得分:1)
尝试将UpdateSourceTrigger = PropertyChanged添加到ComboBox所选项目的绑定中,如下所示:
<DataTemplate x:Key="ComboBoxPackagingType">
<ComboBox SelectedItem="{Binding PackagingType.SelectedItem, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ItemsSource="{Binding PackagingType.ItemsSource}"/>
</DataTemplate>
这对我有用。