【发布时间】:2012-07-21 14:19:51
【问题描述】:
我将一组控件存储在一个数组中,我试图在一个循环中一个一个地为所有控件设置动画,但我只能看到最后一个动画?
for (int i = 0; i < 4; i++)
{
Dispatcher.BeginInvoke(() =>
{
var sb = new Storyboard();
sb = CreateStoryboard(1.0, 0.0, this.Lights[0, i]);
sb.Begin();
});
}
private Storyboard CreateStoryboard(double from, double to, DependencyObject targetControl)
{
Storyboard result = new Storyboard();
DoubleAnimation animation = new DoubleAnimation();
animation.From = from;
animation.To = to;
animation.Duration = TimeSpan.FromSeconds(1);
animation.BeginTime = TimeSpan.FromSeconds(1);
animation.AutoReverse = false;
Storyboard.SetTarget(animation, targetControl);
Storyboard.SetTargetProperty(animation, new PropertyPath(UIElement.OpacityProperty));
result.Children.Add(animation);
return result;
}
【问题讨论】:
-
这种方法的改变是否意味着您的最后一个问题 (stackoverflow.com/questions/4384159/wp7-ui-updating-issue) 不再有效?
-
请注意,Windows Phone 7 使用的是 Silverlight 3 版本,而不是 4。
标签: silverlight windows-phone-7