WPF组合框项目样式

WPF组合框项目样式,wpf,wpf-style,Wpf,Wpf Style,有人能告诉我如何设计我的combobox,其中有一个复选框作为comboboxitem。我试图找到一个重复的没有用,所以如果这是一个重复的问题,请让我知道正确的一个。当前正在发生的行为是,当鼠标悬停在某个项目上时,它会使背景和前景变为黑色。我想要的是背景可能是灰色的,或者前景可能是白色的。白色的鼠标悬停在上面。我不能为我的生活想出正确的风格颜色刷,使这发生…任何帮助将是伟大的 以下是xaml: <ComboBox ItemsSource="{Binding PromptFilterList

有人能告诉我如何设计我的combobox,其中有一个复选框作为comboboxitem。我试图找到一个重复的没有用,所以如果这是一个重复的问题,请让我知道正确的一个。当前正在发生的行为是,当鼠标悬停在某个项目上时,它会使背景和前景变为黑色。我想要的是背景可能是灰色的,或者前景可能是白色的。白色的鼠标悬停在上面。我不能为我的生活想出正确的风格颜色刷,使这发生…任何帮助将是伟大的

以下是xaml:

<ComboBox ItemsSource="{Binding PromptFilterList}">
<ComboBox.ItemTemplate>
    <DataTemplate>
        <CheckBox IsChecked="{Binding IsSelected}" Content="{Binding Item.Description}"/>
    </DataTemplate>
</ComboBox.ItemTemplate>

下面是发生的情况,当鼠标悬停在项目上时,您可以看到字母不清晰:


我希望这对你有所帮助

<ControlTemplate TargetType="{x:Type ComboBoxItem}">
<ControlTemplate.Triggers>
     <Trigger Property="IsHighlighted" Value="true">
     <Setter Property="Opacity" TargetName="Border" Value="1" />
     <Setter Property="Background" TargetName="Border" Value="{your requirement}" />
     <Setter Property="BorderBrush" TargetName="Border" Value="{your requirement}" />
     <Setter Property="Foreground" Value="{your requirement}" />                            
     </Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>

以下是我在评论中提到的突出显示颜色资源。在WPF中,系统颜色(如高光等)是具有预定义静态键的笔刷资源。在给定的范围内,可以使用该键定义新资源,它将覆盖默认值


要更改组合框的突出显示颜色。搜索这个应该更容易。这是一个静态资源密钥。
<ComboBox ItemsSource="{Binding PromptFilterList}">
    <ComboBox.Resources>
        <SolidColorBrush 
            x:Key="{x:Static SystemColors.HighlightBrushKey}" 
            Color="SkyBlue"
            />
        <SolidColorBrush 
            x:Key="{x:Static SystemColors.HighlightTextBrushKey}" 
            Color="White"
            />
    </ComboBox.Resources>
    <ComboBox.ItemTemplate>
        <DataTemplate>
            <CheckBox 
                IsChecked="{Binding IsSelected}" 
                Content="{Binding Item.Description}"
                />
        </DataTemplate>
    </ComboBox.ItemTemplate>