WPF动画设置回原始大小和位置,但不可见
本文关键字:位置 设置 动画 原始 WPF | 更新日期: 2023-09-27 17:58:50
我正在使用DoubleAnimations为控件的大小和位置设置动画。以下是我想要实现的目标:
我希望控件设置动画到新的位置和大小。我想要的最后一种状态是控件回到它们的原始位置,但我希望它们在那一点上是不可见的。(这是因为应用程序将对控件的外观进行更改,然后使其再次可见。它们稍后将重新出现,看起来不同,然后再次设置动画。)
如果我将FillBehavior设置为FillBehBehavior.Stop,它们确实会回到原来的位置和大小,但它们会立即在原来的位置再次可见。我试着做以下事情:
ObjectToMove.BeginAnimation(HeightProperty, heightAnim);
ObjectToMove.BeginAnimation(WidthProperty, widthAnim);
trans.BeginAnimation(TranslateTransform.YProperty, anim1);
trans.BeginAnimation(TranslateTransform.XProperty, anim2);
ObjectToMove.Visibility = Visibility.Hidden;
但是,这会使动画不可见。我相信这是因为在动画完成之前,控件被设置为不可见。
我能做什么?
您可能需要另一个动画,将控件返回到其原始位置和大小后启动的Visibility
更改为Hidden
或Collapsed
,然后再将控件外观修改完成后启动的Visibility
更改为Visible
。