我有一个矩形,我正在使用故事板将其旋转,就像汽车仪表(mph)中的针一样。我想做的是能够暂停它。此外,我还想在我想要的时候得到它的位置。就像将其当前值旋转到我指定的最终位置一样。可以这样做吗?
我想做的是用它来计算转速计并根据mph故事板移动转速表针。
DoubleAnimation da = new DoubleAnimation();
da.From = 0 * 6;
da.To = 60;
da.Duration = new Duration(TimeSpan.FromSeconds(5));
RotateTransform rt = new RotateTransform();
rt.CenterX = 35;
rt.CenterY = 0;
rec3.RenderTransform = rt;
rt.BeginAnimation(RotateTransform.AngleProperty, da);
DoubleAnimation tack = new DoubleAnimation();
tack.From = 0 * 6;
tack.To = 30;
tack.Duration = new Duration(TimeSpan.FromSeconds(5));
RotateTransform tackneedle = new RotateTransform();
tackneedle.CenterX = 30;
tackneedle.CenterY = 0;
rec4.RenderTransform = tackneedle;
tackneedle.BeginAnimation(RotateTransform.AngleProperty, tack);
答案 0 :(得分:0)
您可以将动画添加到故事板,以便您暂停和恢复动画。您还应该能够访问旋转变换并获取其中心的值。
答案 1 :(得分:0)
另一种方式可能更合适:
创建一个计算/生成值的类。
将针绑定到该值(如果需要,使用值转换器从数量到角度)
通过这种方式,您可以更轻松地控制值,并且可以通过暂停值的生成来停止动画。
你必须考虑你需要什么:你需要知道动画的价值还是指针跟随/显示价值?