我有一个按钮,我使用故事板和translateTransform移动:
_animatedTranslateTransform = new TranslateTransform();
this.RegisterName("slide", _animatedTranslateTransform);
DoubleAnimation slideDown = new DoubleAnimation();
slideDown.By = 20;
slideDown.Duration = TimeSpan.FromSeconds(0.5);
Storyboard.SetTargetName(slideDown, "slide");
Storyboard.SetTargetProperty(slideDown, new PropertyPath(TranslateTransform.YProperty));
经过一些迭代后,我的按钮已从60像素移动,例如。如何将其替换为初始位置?
我试过这个(我设置-60来简化解释):
TranslateTransform t = (TranslateTransform) _button.RenderTransform;
t.Y = -60;
但如果动画已经发生一次,它就不起作用。
答案 0 :(得分:1)
更新: 为了防止未来的读者被下面的来回困惑,正确的答案是:
_button.RenderTransform = new TranslateTransform();
原始答案:
我会存储您想要重置时使用的原始位置。我不认为这是一个原始状态的概念"控制。