我正在尝试将数据触发器添加到默认的组合框样式,因此下拉框中的每个文本项都将分配不同的颜色,所选项也将是该颜色。我已成功地使用此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>
但我无法弄清楚如何为组合框做到这一点。有人可以帮忙吗?
答案 0 :(得分:0)
试试这个:
<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>