我有一个带有许多组合框的窗口。这些组合框看起来像这样,有一种样式:
<ComboBox Style="{StaticResource ComboBoxFlat}"
ItemsSource="{Binding Source={x:Static binding:BindingCollections.Names}}"
SelectedValuePath="Key"
DisplayMemberPath="Value"
SelectedValue="{Binding NameID}"/>
ItemsSource是一个键值列表,将显示这些值。到目前为止,所有这些都有效。
现在,可能会发生以下情况:绑定到SelectedValue的属性包含ItemsSource中不存在的键。如果发生这种情况,则应以某种方式标记组合框,例如组合框应显示为红色框。
做到这一点的最佳方法是什么? 可以用组合框样式定义这种行为吗?
答案 0 :(得分:1)
您可以绑定到SelectedIndex
的{{1}}属性和ComboBox
源属性,并实现一个NameID
,如果{{1 }}属性返回IMultiValueConverter
,而true
属性返回一个值,例如:
SelectedIndex
XAML:
-1