画面に円形のボタンがあり、それをタップしたときの効果をアニメーション化するとします。最初は、ボタン (楕円形) の背景 (塗りつぶし) は透明で、ボーダー ブラシ (アウトライン) には、ボタンのように見えるように色と太さが設定されています。
ここで、スタイラスまたはマウスが入ったときにこの楕円の背景 (塗りつぶし) をアニメーション化し、タップするとその効果が得られるようにしたいと考えています (iPhone やその他のデバイスで見たものです)。
アプリ リソースにスタイルを作成しました。
<Style x:Key="circularButton" TargetType="Ellipse">
<Style.Triggers>
<EventTrigger RoutedEvent="StylusEnter">
<BeginStoryboard>
<Storyboard FillBehavior="Stop">
<ColorAnimation Storyboard.TargetProperty="(Ellipse.Fill).Color" From="Transparent" To="#993C5E66" Duration="00:00:00.2" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger RoutedEvent="StylusLeave">
<BeginStoryboard>
<Storyboard>
<ColorAnimation Storyboard.TargetProperty="(Ellipse.Fill).Color" From="#993C5E66" To="Transparent" Duration="00:00:00.2" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger RoutedEvent="MouseEnter">
<BeginStoryboard>
<Storyboard>
<ColorAnimation Storyboard.TargetProperty="(Ellipse.Fill).Color" From="Transparent" To="#993C5E66" Duration="00:00:00.2" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger RoutedEvent="MouseLeave">
<BeginStoryboard>
<Storyboard>
<ColorAnimation Storyboard.TargetProperty="(Ellipse.Fill).Color" From="#993C5E66" To="Transparent" Duration="00:00:00.2" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Style.Triggers>
</Style>
そして、''StylusDown''/''MouseDown'' イベントをサブスクライブして、ボタンの押下を実際に処理します。ボタンを押すと、別のフォームが起動します。問題は、このフォームを起動する前にアニメーションが完了するのを待ちたいことです。このようなことは可能ですか?