0

如何设置“EndPointProperty”或“StartPointProperty”的动画来为 LinearGradientBrush 设置动画?

我在 xaml 中有这段代码:

<Rectangle x:Name="itemRefl"  >
 <Rectangle.Fill>
  <LinearGradientBrush EndPoint="1,0" StartPoint="0,0">
    <GradientStop Offset="0"/>
    <GradientStop Color="White" Offset="0.5"/>
    <GradientStop Offset="1"/>
  </LinearGradientBrush>
 </Rectangle.Fill>
</Rectangle>

我的动画代码就是这样,但不能正常工作。我怎样才能正确地为这个属性设置动画?

Storyboard story1 = new Storyboard();
PointAnimation endPointAnim = new PointAnimation()
{
   EasingFunction = new SineEase { EasingMode = EasingMode.EaseInOut },
   From = new Point( 0.0, -0.26),
   To = new Point(0.0, 0.26),
   Duration = new Duration(TimeSpan.FromMilliseconds(500))

};
Storyboard.SetTargetProperty(endPointAnim, new PropertyPath(LinearGradientBrush.EndPointProperty));
story1.Children.Add(endPointAnim);
myelement.BeginStoryboard(story1);

谢谢

4

1 回答 1

0

直接在 LinearGradientBrush 上运行动画:

itemRefl.Fill.BeginAnimation(LinearGradientBrush.EndPointProperty, endPointAnim);
于 2020-03-02T19:51:53.100 回答