WPF・Silverlight アニメーション

■ その2 消えていく文字列                 【3】

徐々に大きくする効果を実現するため、DoubleAnimation 型のアニメーションを使用して、ScaleTransform.ScaleX プロパティ、ScaleTransform.ScaleY プロパティを 1 → 2.5 に変化させます。

-- MainWindow.xaml.cs --
DoubleAnimation doubleAnimation2 = new DoubleAnimation();
doubleAnimation2.From = 1;
doubleAnimation2.To = 2.5;
doubleAnimation2.Duration = new Duration(TimeSpan.FromMilliseconds(600));
Storyboard.SetTarget(doubleAnimation2, this.textBlock1);
Storyboard.SetTargetProperty(doubleAnimation2, new PropertyPath(
  "(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)"));

DoubleAnimation doubleAnimation3 = new DoubleAnimation();
doubleAnimation3.From = 1;
doubleAnimation3.To = 2.5;
doubleAnimation3.Duration = new Duration(TimeSpan.FromMilliseconds(600));
Storyboard.SetTarget(doubleAnimation3, this.textBlock1);
Storyboard.SetTargetProperty(doubleAnimation3, new PropertyPath(
  "(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)"));

作成したアニメーションを同時に実行する Storyboard を作成し、ボタンクリック時のイベントハンドラーで実行します。

-- MainWindow.xaml.cs --
_storyboard = new Storyboard();
_storyboard.Children.Add(doubleAnimation1);
_storyboard.Children.Add(doubleAnimation2);
_storyboard.Children.Add(doubleAnimation3);
_storyboard.Begin();

戻る <<   3

最新号はこちらから