让我说我有财产
public double MyProp{get;set;}
如何在1秒内将该属性设置为0到100?我尝试过这样的事情:
DoubleAnimation animation = new DoubleAnimation(0, 100, TimeSpan.FromSeconds(1));
animation.BeginAnimation(MyProp, ???);
根据我的观点,我有:
<Image Name="ImgCompassPointer" Source="somePath" RenderTransformOrigin=".5,.5">
<Image.RenderTransform>
<TransformGroup>
<RotateTransform Angle="{Binding MyProp}"/>
</TransformGroup>
</Image.RenderTransform>
</Image>
当我为角度设置一个新值时,我想为它设置动画。我怎么能在代码背后做到这一点?
如果我在哪里制作高度的动画,那么我就可以做类似的事情:
DoubleAnimation animation = new DoubleAnimation(0, 100, TimeSpan.FromSeconds(1));
ImgCompassPointer.ImgCompassPointer.BeginAnimation(Image.HeightProperty, animation);
但我无法想出一种为旋转/角度属性设置动画的方法
答案 0 :(得分:1)
您可以使用
为rotation/angle
设置动画
var doubleAnimation = new DoubleAnimation(360, 0, new Duration(TimeSpan.FromSeconds(1)));
var rotateTransform = new RotateTransform();
image.RenderTransform = rotateTransform;
image.RenderTransformOrigin = new Point(0.5, 0.5);
doubleAnimation.RepeatBehavior = RepeatBehavior.Forever;
rotateTransform.BeginAnimation(RotateTransform.AngleProperty, doubleAnimation);