设置:
- 有一个绑定到 ObservableCollection 的 ComboBox。
- UI 中有一个 Car 对象。它的 Color 属性绑定到 ComboBox 的 SelectedItem(绑定:
<ComboBox SelectedItem="{Binding Car.Color}".../>
- 颜色列表可以在数据库中更改,有时应该刷新。
问题:
当ObservableCollection<MyColor>
刷新时(== 这意味着它Reset
在其CollectionChanged
事件中发送一个),Car 的 Color 属性设置为集合中的第一个项目 => 刷新列表 => ComboBox 重新加载集合并将其选定的项目设置为第一个集合中的一个 => 汽车的颜色更改为相同的第一项(因为双向绑定)=> 问题
简而言之 - 我怎样才能避免这种情况?如何在重新加载时告知将所选项目立即从绑定中取出?