失败的灰色IsEnabled错误

时间:2015-03-06 21:28:27

标签: .net wpf foreground isenabled

一旦我设置了TextBlock前景属性,我在按钮上的IsEnable = False上丢失了灰色,并且在工具提示上也丢失了灰色。

如何设置TextBlock前景的样式而不影响IsEnable = False和ToolTip?

<Style TargetType="TextBlock">
    <Setter Property="FontFamily" Value="Segoe UI Semilight" />
    <Setter Property="FontSize" Value="11" />
    <Setter Property="Margin" Value="4,1,0,1" />
    <Setter Property="Foreground" Value="{StaticResource  BrushDarkDarkBlue}" />
</Style>

1 个答案:

答案 0 :(得分:2)

只需将Foreground二传手放在Trigger中,只有IsEnabled属性值为true才能设置值:

<Style TargetType="TextBlock">
    <Setter Property="FontFamily" Value="Segoe UI Semilight" />
    <Setter Property="FontSize" Value="11" />
    <Setter Property="Margin" Value="4,1,0,1" />
    <Style.Triggers>
        <Trigger Property="IsEnabled" Value="True">
            <Setter Property="Foreground" Value="{StaticResource BrushDarkDarkBlue}" />
        </Trigger>
    </Style.Triggers>
</Style>

IsEnabled变为false时,默认(模板/样式)值将设置为保持“灰显”效果。