WPFでは、ウィンドウの位置をどのようにアニメーション化するのですか? Left/Topプロパティを単純にアニメーション化しようとしましたが、うまくいきませんでした。誰がどのように知っていますか?ウィンドウをアニメーション化する方法は?
ありがとう!
WPFでは、ウィンドウの位置をどのようにアニメーション化するのですか? Left/Topプロパティを単純にアニメーション化しようとしましたが、うまくいきませんでした。誰がどのように知っていますか?ウィンドウをアニメーション化する方法は?
ありがとう!
アニメーション化しようとしているウィンドウのストーリーボードを作成するだけです。ここで
はW1という名前のウィンドウのための例です:
<Window.Triggers>
<EventTrigger RoutedEvent="Window.Loaded">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard BeginTime="0" Duration="Forever">
<DoubleAnimation Storyboard.TargetName="w1" Storyboard.TargetProperty="(Window.Top)" From="0" To="300" AutoReverse="true" BeginTime="0:0:0" Duration="0:0:1" RepeatBehavior="Forever"/>
<DoubleAnimation Storyboard.TargetName="w1" Storyboard.TargetProperty="(Window.Left)" From="0" To="400" AutoReverse="true" BeginTime="0:0:0" Duration="0:0:2" RepeatBehavior="Forever"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Window.Triggers>
Expression Blendを使用してStoryBoardを追加することもできます。 Blendでウィンドウのプロパティを変更し、.csコードでアニメーションをアクティブ化するだけのTimeLineを制御することができます。
ウィンドウが表示されている間これは、フェード効果を行います。
<Window.Triggers>
<EventTrigger RoutedEvent="Loaded">
<BeginStoryboard>
<Storyboard Duration="00:00:3" Storyboard.TargetProperty="Opacity">
<DoubleAnimation From="0" To="1"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Window.Triggers>
を