Это, вероятно, не лучшее решение, но рабочее:
Вместо использования стиля я создал комбинированный список с ItemTemplate
<ComboBox Width="200" Height="30" ItemsSource="{Binding SimpleList, UpdateSourceTrigger=PropertyChanged}" >
<ComboBox.ItemTemplate>
<DataTemplate>
<Label Content="{Binding Name}" Background="{Binding BackGround}" Foreground="{Binding ForeGround}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
Мой SimpleList содержит 3 "SimpleObjects"со свойствами для имени, фона и фона.BackGround по умолчанию имеет белый цвет, а ForeGround - черный.
После того, как мой CheckBox проверен, я получаю первый элемент моего списка и изменяю его свойства.
private void CheckBox_Checked(object sender, RoutedEventArgs e)
{
SimpleObject obj = SimpleList.FirstOrDefault();
obj.BackGround = new SolidColorBrush(Colors.Black);
obj.ForeGround = new SolidColorBrush(Colors.White);
}
Выглядит так.