我正在寻找在我的应用程序关闭时运行的旧电视(CRT)风格的关闭动画(如果你知道我的意思)。不知道是否有特定的名称。我尝试使用通用术语谷歌搜索,但我看到的唯一结果与iPhone有关。我知道这需要<Storyboard>
和一些DoubleAnimation
,但不会多于此,因为我不是设计师。
有没有人创造过这种效果或知道此效果的确切名称,以便在线搜索?或者,如果有人可以分享基本的<Storyboard>
,我会对其进行改进。
答案 0 :(得分:0)
我想我知道你的意思,我认为最好的方法是通过动画设置为windows渲染变换的缩放变换。您可以在Closing事件中触发此事。
你的窗口看起来像这样
<Window.Resources>
<Storyboard x:Key="ClosingStoryboard" Storyboard.TargetName="windowScale">
<DoubleAnimation Storyboard.TargetProperty="ScaleY" From="1" To="0.0005" Duration="0:0:0.3"/>
<DoubleAnimation Storyboard.TargetProperty="ScaleX" From="1" To="0" Duration="0:0:0.3" BeginTime="0:0:0.3"/>
</Storyboard>
</Window.Resources>
<Window.RenderTransform>
<ScaleTransform x:Name="windowScale" ScaleX="1" ScaleY="1" CenterX="265" CenterY="400"/>
</Window.RenderTransform>
CentreX和CentreY需要设置窗口宽度和高度的一半。
从后面的代码触发它,如此
var sb = this.Resources["ClosingStoryboard"] as Storyboard;
sb.Begin(this);
我刚测试了这个并且它看起来很好用,可以通过缓动模式和一些摆弄来改进,但是你需要定义自己的窗口样式,或者只有你的窗口内容会被动画化。
答案 1 :(得分:-1)
这是你在找什么?