【发布时间】:2014-08-03 15:41:51
【问题描述】:
以下代码在 Silverlight 中运行良好:
private void Button_Click_1(object sender, RoutedEventArgs e)
{
Storyboard storyboard = new Storyboard();
DoubleAnimation doubleAnimation = new DoubleAnimation();
doubleAnimation.From = 50;
doubleAnimation.To = 100;
doubleAnimation.RepeatBehavior = RepeatBehavior.Forever;
doubleAnimation.AutoReverse = true;
doubleAnimation.Duration = new Duration(TimeSpan.FromMilliseconds(200));
storyboard.Children.Add(doubleAnimation);
Storyboard.SetTarget(doubleAnimation, button1);
Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("Width"));
storyboard.Begin();
}
在 WinRT/Metro 中,它需要稍作改动才能使其编译:
Storyboard.SetTargetProperty(doubleAnimation, "Width");
但是当你运行它时,什么也没有发生。
如果您将属性从“宽度”更改为“不透明度”(同时更改 From=0 和 To=1),则可以。
“宽度”有什么问题?
【问题讨论】:
-
您为什么不使用
EventTriggermsdn.microsoft.com/en-us/library/… 将所有这些代码移至xaml? -
@RredCat - 据我所知,WinRT 中没有 EventTrigger。
标签: c# windows-runtime winrt-xaml