Windows 8 Metro アプリで Border コントロールの幅をアニメーション化しようとしています。Opacity など、Border の他のプロパティをアニメーション化することができました。
private void Item_Tapped(object sender, RoutedEventArgs e)
{
var border = sender as Border;
var animation = new DoubleAnimation();
animation.To = 0.0;
animation.Duration = new Duration(TimeSpan.FromSeconds(1));
var storyboard = new Storyboard();
storyboard.Children.Add(animation);
Storyboard.SetTarget(animation, border);
Storyboard.SetTargetProperty(animation, "Opacity");
storyboard.Begin();
}
しかし、コントロールの幅をアニメーション化しようとすると:
private void Item_Tapped(object sender, RoutedEventArgs e)
{
var border = sender as Border;
var animation = new DoubleAnimation();
animation.To = 600.0;
animation.Duration = new Duration(TimeSpan.FromSeconds(1));
var storyboard = new Storyboard();
storyboard.Children.Add(animation);
Storyboard.SetTarget(animation, border);
Storyboard.SetTargetProperty(animation, "Width");
storyboard.Begin();
}
何も起こりません。
WPF ではこれを実行できますが、Windows 8 では実行できません。これは Metro の制限またはバグですか、それとも何か問題がありますか?
ありがとう