从LinearGradientBrush转换为SolidColorBrush的动画更改

3

可以通过动画将椭圆的填充从线性渐变刷改为实色刷,或者改变线性渐变刷中的渐变点吗?

2个回答

3
您可以逐个动画渐变刷的渐变停止点(将它们设置为相同的颜色,就可以获得“实心”颜色)。这是一个将渐变设置为一些目标的Panel.Background并进行动画处理的示例:
<Storyboard>
  <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).
                    (GradientBrush.GradientStops)[0].(GradientStop.Color)"
                                Storyboard.TargetName="sometarget">
    <EasingColorKeyFrame KeyTime="0"
                         Value="Blue" />
  </ColorAnimationUsingKeyFrames>
  <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).
                    (GradientBrush.GradientStops)[1].(GradientStop.Color)"
                                Storyboard.TargetName="sometarget">
    <EasingColorKeyFrame KeyTime="0"
                         Value="Green" />
  </ColorAnimationUsingKeyFrames>
</Storyboard>

3
也许你应该使用两个省略号,并动态改变它们的不透明度。

很不幸,它将会使标记膨胀,但对于一个好的侧面解决方案我支持。 - Chris Hagan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接