我有两个ComboBoxes
,它们的ItemsSource
绑定到同一个ObservableCollection
:
public ObservableCollection<MyType> MyTypeCollection { get; set; }
我定义了两个不同的
SelectedItem
属性,这些属性又绑定到了正确的ComboBox
。public MyType MySelectedItem1 { get; set; }
public MyType MySelectedItem2 { get; set; }
每当我在其中一个ComboBox中选择一个项目时,我的类中定义的两个SelectedItem属性都会设置为该选择。这两个ComboBox也在视觉上设置为该值。
为什么会这样?
我尝试了几种方法,例如Mode = OneWay等,但它们都不起作用。
以下是我精简后的XAML(用于问题):
<ComboBox SelectedItem="{Binding MySelectedItem1}"
ItemsSource="{Binding MyTypeCollection, Mode=OneWay}"/>
<ComboBox SelectedItem="{Binding MySelectedItem2}"
ItemsSource="{Binding MyTypeCollection, Mode=OneWay}"/>
IsSynchronizedWithCurrentItem="True"
?如果是这样,那就是问题所在。 - Mike Strobel