стиль для поля со списком с цветовой кодировкой

Я пытаюсь добавить триггеры данных в стиль поля со списком по умолчанию, чтобы каждому текстовому элементу в раскрывающемся списке был назначен другой цвет, и выбранный элемент также будет иметь этот цвет. Я успешно смог раскрасить элементы текстового столбца в моей сетке данных, используя этот код xaml:

<DataGrid ...>
    <DataGrid.Columns>
        <DataGridTextColumn ...>
            <DataGridTextColumn.CellSyle>
                <Style TargetType="DataGridCell">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding Path=Status}" Value="Accepted">
                            <Setter Property="Foreground" Value="Green"/>
                        </DataTrigger>
                    <Style.Triggers>
                </Style>
            </DataGridTextColumn.CellStyle>
        </DataGridTextColumn>
    </DataGrid.Columns>
</DataGrid>

Но я не могу понять, как это сделать для поля со списком. Может кто-нибудь помочь?


person Alex    schedule 15.06.2012    source источник


Ответы (1)


Попробуй это:

<ComboBox x:Name="cb01">
  <ComboBox.ItemTemplate>
    <DataTemplate>
      <TextBlock Text="{Binding Name}">
        <TextBlock.Style>
          <Style TargetType="TextBlock">
            <Style.Triggers>
                    <DataTrigger Binding="{Binding Path=Status}"
                                 Value="Accepted">
                        <Setter Property="Foreground"
                                Value="Green" />
                    </DataTrigger>
            </Style.Triggers>
          </Style>
        </TextBlock.Style>
      </TextBlock>
    </DataTemplate>
  </ComboBox.ItemTemplate>
</ComboBox>
person NestorArturo    schedule 15.06.2012