在WPF中闪亮的明星

时间:2015-08-20 13:56:28

标签: c# wpf wpf-controls

我的节目中有一颗星星:

<Grid>
    <Path Name="starPath" Fill="White" StrokeThickness="1" Stroke="White" 
          Data="M 127,37 L 104,105 L 34,105 L 91,150 L 69,218 L 127,176 L 187,218 L 164,150 L 223,105 L 151,105 L 127,37">
    </Path>
</Grid>

我想要明星亮点,点亮并点亮慢慢地并永远重复这一点,并通过动画改变路径笔划的颜色。

我使用了这段代码,慢慢点亮但很快点亮并重复:

ColorAnimation animation;
animation = new ColorAnimation();
this.starPath.Stroke = new SolidColorBrush(Colors.Transparent);
animation.To = Colors.White;
animation.Duration = new Duration(TimeSpan.FromMilliseconds(900));
animation.RepeatBehavior = RepeatBehavior.Forever;
this.starPath.Stroke.BeginAnimation(SolidColorBrush.ColorProperty, animation);

星星如何慢慢点亮?

1 个答案:

答案 0 :(得分:1)

只需添加以下行:

animation.AutoReverse = true;

这会导致动画再次在另一个方向上运行,然后再从头开始重复。

如果您想要反方向的其他参数(即持续时间),您可以使用Storyboard,请参阅此示例:

WPF how to easily chain animations in code behind?