2

我想设置PASSas 的文本颜色和 as的GREEN文本颜色。我似乎找不到解决方案。我需要在纯 XAML 中执行此操作。FAILRED

<ComboBox x:Name="LocatedCorrectly" Width="100" 
          Height="25" Grid.Column="1" Grid.Row="2"
          HorizontalAlignment="Left" 
          IsSynchronizedWithCurrentItem="True">

    <ComboBoxItem Content="PASS" Tag="PASS" IsSelected="True"/>                
    <ComboBoxItem Content="FAIL" Tag="FAILED"  />
</ComboBox>
4

2 回答 2

3

您可以使用相同的触发器(您也应该继承基本样式)

<Style TargetType="{x:Type ComboBoxItem}">
    <Setter Property="Foreground" Value="Blue" />
    <Style.Triggers>
       <Trigger Property="Content" Value="PASS">
            <Setter Property="Foreground" Value="Green"/>
       </Trigger>
    </Style.Triggers> 
</Style>
于 2013-08-28T05:42:31.190 回答
0

我建议通过在 Window.Resources 中单独创建样式文档来更改您的样式,然后将您的 ComboBox 项目设置为具有您想要的任何前景色。

<ComboBox.Resources>
    <Style TargetType="{x:Type ComboBoxItem}">
        <Setter Property="Foreground" Value="Blue" />
    </Style>
</ComboBox.Resources>

如果您想将其保留在 Application.Resources 中,那么我认为您需要追踪用于设置 TextBlock.Text 颜色的 x:Static 画笔键并在您的 ComboBox.Resources 中覆盖它

于 2013-08-28T03:16:22.957 回答