【发布时间】:2011-02-23 17:42:35
【问题描述】:
我想用动画显示新窗口,将大小从 0 放大到 300。在 Loaded 事件中,我输入了以下代码:
DoubleAnimation heightAnim = new DoubleAnimation(0,300,TimeSpan.FromSeconds(1));
BeginAnimation(HeightProperty,heightAnim);
DoubleAnimation WidthAnim = new DoubleAnimation(0,300,TimeSpan.FromSeconds(1));
BeginAnimation(WidthProperty,WidthAnim);
此代码工作正常。但是构建从窗口的左上角开始,并向右和向下扩展,直到它达到 300 * 300 大小。 我希望它从中心开始并从那里扩展到所有 4 个方面。 我该怎么做?
附言在尝试Jogy 回答后,我意识到获得这种效果的更好方法是在 ScaleX 和 ScaleY 上应用动画,而不是在窗口大小上应用动画。因为当窗口大小的动画时,用户将只能看到部分内容,直到它达到全尺寸。 你觉得......怎么样 ?有什么更好的方法?
提前致谢!
【问题讨论】:
-
以前没用过WPF,但是在openGL等中实现的方法是将“pivot”移到中心,然后进行缩放。 WPF 中必须有这样的东西。