我有一个xaml风格改变背景悬停按钮,但我想做动画。我需要帮助这是我的代码。
<Style x:Key="MyButtonStyle2" TargetType="Button">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Margin" Value="5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="border"
BorderThickness="{TemplateBinding BorderThickness}"
Padding="{TemplateBinding Padding}"
BorderBrush="{TemplateBinding BorderBrush}"
Background="{TemplateBinding Background}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<!-- <Setter TargetName="border" Property="Background" Value="#FF292929" /> -->
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
字符串
我尝试了一些代码,我在网上看到,但它不工作,我得到了例外,如背景是画笔,你不能使用颜色动画。
1条答案
按热度按时间o75abkj41#
你试过VisualStateManager吗?您可以添加VisualStateManager作为ControlTemplate的第一个子级,然后添加带有DoubleAnimation(或其他类型的动画,如果需要)的情节串联板来设置背景的动画。或者,您可以在VisualState中使用Setter来即时更改背景,而无需动画,这取决于您要做什么!