设置 ComboBoxItem 的样式 = null,但以编程方式

Set Style of ComboBoxItem = null, but programmatically

我的 XAML 中有以下几行 Window.Resources:

    <Style TargetType="{x:Type ComboBoxItem}">
        <Setter Property="Background">
            <Setter.Value>
                <ImageBrush ImageSource="pics/greenbutton.png" />
            </Setter.Value>
        </Setter>
        <Setter Property="Foreground" Value="White" />
    </Style>

在我的 Window 中有几个组合框,这很好。但我有一个,它令人不安,所以我想将样式设置为 null。我已经在 XAML-ComboBox 中放置了一个 Style="{x:Null}"。这为 ComboBox 本身提供了良好的视图,但不是打开的 Box(即 ComboBoxItems)。我在代码隐藏中使用了数据绑定,那么如何删除 ComboBoxItems 的 window 样式?

您应该向 ComboBox 资源添加目标类型为 ComboBoxItem 的空样式。

您可以在 XAML 中这样做:

<ComboBox x:Name="myComboBox" ...>
    <ComboBox.Resources>
        <Style TargetType="ComboBoxItem">
        </Style>
    </ComboBox.Resources>
 ...
</ComboBox>

或者您可以使用以下代码在代码隐藏中执行此操作:

myComboBox.Resources.Add(typeof(ComboBoxItem), new Style(typeof(ComboBoxItem)));