C# 不同选定项目的WPF组合框背景

C# 不同选定项目的WPF组合框背景,c#,wpf,combobox,styles,C#,Wpf,Combobox,Styles,我的组合框只有3项:计划、进度和完成 <ComboBox SelectedIndex="0> <ComboBoxItem Content="Planing"/> <ComboBoxItem Content="Progress"/> <ComboBoxItem Content="Done"/> </ComboBox> 1)使用selectionChanged事件 您可以在组合框\u SelectionChange

我的组合框只有3项:计划、进度和完成

<ComboBox SelectedIndex="0>
    <ComboBoxItem Content="Planing"/>
    <ComboBoxItem Content="Progress"/>
    <ComboBoxItem Content="Done"/>
</ComboBox>
1)使用selectionChanged事件
您可以在
组合框\u SelectionChanged
事件中进行设置

private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    if (comboBox.SelectedItem.ToString() == "Planning")
    {
        comboBox.Background = Brushes.Purple;
    }
    else if (comboBox.SelectedItem.ToString() == "Progress")
    {
        comboBox.Background = Brushes.Blue;
    }
    else if (comboBox.SelectedItem.ToString() == "Done")
    {
        comboBox.Background = Brushes.Green;
    }
}
每次更改组合框中的选定值时,都会调用
组合框\u SelectionChanged
事件。在它里面,您可以简单地验证所选项目的值并应用所需的颜色

这将是
组合框的xaml

<ComboBox x:Name="comboBox" SelectionChanged="comboBox_SelectionChanged"/>

表示当绑定数据满足指定条件时应用属性值或执行操作的触发器


谢谢,但是有没有办法通过xaml来实现呢?@High我添加了如何使用xml。我是wpf新手,对我来说非常有价值,thanksXAML在Windows 10机器上的VisualStudio2019中似乎不起作用。代码可以工作,但不显示任何颜色。
<ComboBox x:Name="mycombobox">
    <ComboBox.Style>
        <Style TargetType="{x:Type ComboBox}">
            <Style.Triggers>
                <DataTrigger Binding="{Binding Path=SelectedItem.Content, ElementName=mycombobox}" Value="Planning">
                    <Setter Property="Background" Value="Purple" />
                </DataTrigger>
                <DataTrigger Binding="{Binding Path=SelectedItem.Content, ElementName=mycombobox}" Value="Progress">
                    <Setter Property="Background" Value="Blue" />
                </DataTrigger>
                <DataTrigger Binding="{Binding Path=SelectedItem.Content, ElementName=mycombobox}" Value="Done">
                    <Setter Property="Background" Value="Green" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </ComboBox.Style>
    <ComboBoxItem Content="Planning"/>
    <ComboBoxItem Content="Progress"/>
    <ComboBoxItem Content="Done"/>
</ComboBox>