以以下简单文本框为例:
<ComboBox IsEditable="True" SelectedItem="{Binding}">
<ComboBoxItem>Angus/ComboBoxItem>
<ComboBoxItem>Jane</ComboBoxItem>
<ComboBoxItem>Steve</ComboBoxItem>
</ComboBox>
我希望允许用户通过输入名称来查找他们的选择,因此我将IsEditable设置为true。绑定到SelectedItem属性的可接受值是列表中的任何一个选项或没有选择(null)。问题是,默认情况下,如果有人键入不在列表中的名称,则没有错误指示。 例如:用户可以键入“Bob”,导致SelectedItem属性为null,但没有意识到Bob不存在于列表中。相反,我想在ComboBox的Text属性不为null或空,并且SelectedItem为null时立即提供视觉指示,并阻止他们继续输入。 我的初步想法是自定义验证规则,但我不知道如何访问组合框的Text和SelectedItem属性。