在Expression Blend 4中,我想更改不同状态下自定义按钮的Foreground
。我只能更改Background
和BorderBrush
。
就像这样:
如果状态为“Normal”,则文本“Button”的颜色为Black
,而状态为“Pressed”,文本“Button”的颜色为White
。
在Brushes Panel
下的Properties Panel
下,有3个属性,但没有Foreground
属性:
谁能帮帮我?我很困惑。
修改
我发现ContentControl
具有Foreground
属性,但ContentPresenter
没有。ContentControl
。我应该使用ContentPresenter
而不是{{1}}?
答案 0 :(得分:0)
到目前为止,我还没有找到一些方法可以通过Blend更改Foreground(我的意思是不在代码中)。在代码中,就像那样:
<ResourceDictionary ...>
<Style x:Key="ButtonStyle1" TargetType="{x:Type Button}">
<Setter Property="Template">
...
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
...
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimationUsingKeyFrames
Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)">
<EasingColorKeyFrame KeyTime="0" Value="Blue"/>
</ColorAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
...
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<ContentPresenter .../>
...
</ResourceDictionary>