C# 我是否可以检查itemsource中是否存在selectedItem of comboBox,或者是否未使用触发器和/或转换器?

C# 我是否可以检查itemsource中是否存在selectedItem of comboBox,或者是否未使用触发器和/或转换器?,c#,wpf,combobox,triggers,converter,C#,Wpf,Combobox,Triggers,Converter,我在不同的视图中有不同的组合框,它们具有不同的itemsource,因此我需要一种通用的方法来检查用户选择的值是否存在于相应的itemsource中。由于组合框是可编辑的,所以我想在用户输入垃圾值时通知用户,比如将前景更改为红色 <Window x:Class="CustomComboBox.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns

我在不同的视图中有不同的组合框,它们具有不同的itemsource,因此我需要一种通用的方法来检查用户选择的值是否存在于相应的itemsource中。由于组合框是可编辑的,所以我想在用户输入垃圾值时通知用户,比如将前景更改为红色


<Window x:Class="CustomComboBox.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <StackPanel VerticalAlignment="Center">
            <ComboBox Name="cmbBox" Width="100" Height="30" IsEditable="True" StaysOpenOnEdit="True" >
                <ComboBox.Style>
                    <Style TargetType="ComboBox">
                        <Style.Triggers>
                            <Trigger Property="SelectedIndex" Value="-1">
                                <Setter Property="Foreground" Value="Red"/>
                            </Trigger>
                        </Style.Triggers>
                    </Style>
                </ComboBox.Style>
            </ComboBox>

        </StackPanel>

    </Grid>
</Window>

如果只允许用户从给定集合中选择输入,希望这对用户有所帮助,为什么不将控件改为某种下拉菜单呢?我有一个可编辑的组合框,因为用户可以直接键入他想要选择的值,而不是从下拉菜单中选择,但我还想在用户选择一个不在itemsource中的值时通知用户。这是可行的,但前台不会改变选中此选项时,工具提示会在用户输入垃圾时显示消息,但在应用程序启动时也会显示消息。不知道为什么它不与前台一起工作。