更改前景色我创建了一个样式模板,我的Silverlight的按钮,成功地创建圆角和其然改变了大部分的风格没有任何问题,一个悬停状态...Silverlight的按钮 - 悬停
我不知道如何使Foreground
颜色变更hover
。
看到我的代码如下,我有问题的部分目前已被注释掉。
<Style TargetType="Button" >
<Setter x:Name="myFontColor" Property="Foreground" Value="#000000"/>
<Setter Property="FontSize" Value="11"/>
<Setter Property="FontStyle" Value="Normal"/>
<Setter Property="FontFamily" Value="Arial"/>
<Setter Property="FontWeight" Value="Normal"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid Height="28">
<Border x:Name="myBorder" BorderBrush="#C4C4C4" BorderThickness="1" CornerRadius="5">
<Rectangle x:Name="BackgroundGradient" RadiusX="5" RadiusY="5">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop x:Name="GradientStop1" Color="#FDFDFD" Offset="0" />
<GradientStop x:Name="GradientStop2" Color="#D6D6D6" Offset="1" />
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
</Border>
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Center" />
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommomStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation
Storyboard.TargetName="GradientStop1"
Storyboard.TargetProperty="Color"
From="#FDFDFD" To="#0A284B"
Duration="0"
/>
<ColorAnimation
Storyboard.TargetName="GradientStop2"
Storyboard.TargetProperty="Color"
From="#D6D6D6" To="#135887"
Duration="0"
/>
<ColorAnimation
Storyboard.TargetName="myBorder"
Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)"
From="#C4C4C4" To="#000000"
Duration="0"
/>
<!--<ColorAnimation
Storyboard.TargetName="myFontColor"
Storyboard.TargetProperty="Foreground"
From="#000000" To="#FFFFFF"
Duration="0"
/>-->
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
对于Silverlight来说相当新,Id希望这只是一个简单的问题,针对正确的元素和样式。
我该如何去取得Foreground
颜色改变hover
?
在此先感谢
谢谢! ..我创建的样式是在我的应用程序中实现所有按钮。你的代码是否适合这个? – Blowsie 2012-07-13 07:14:48
它将在所有按钮上工作,MouseEnter和MouseLeave调用这些方法,但不必直接完成,但可以通过调用事件处理程序完成,如果其中一个按钮必须在悬停时更改颜色才能完成其他操作。要知道与按钮悬停,您可以使用对象发件人参数,其实是一个按钮引用,如果我记得正确。 – 2012-07-13 07:25:34
感谢您的支持,虽然不是我所期待的。 +1 – Blowsie 2012-07-13 07:27:35