Может кто-нибудь помочь мне, пытаясь выяснить, почему это не работает.
Переменная brushes содержит предварительно заполненный список кистей.
Если я попытаюсь применить BeginAnimation
непосредственно во время итерации, он работает нормально. Но имеет большие издержки, начиная каждую анимацию отдельно ...
Итак, я пытался поместить все анимации в одну раскадровку и запустить их одновременно ...
var storyBoard = new Storyboard();
var duration = new Duration(TimeSpan.FromMilliseconds(time));
foreach (Brush brush in brushes)
{
var animation = new DoubleAnimation(toValue, duration);
storyBoard.Children.Add(animation);
Storyboard.SetTargetProperty(animation, new PropertyPath(Brush.OpacityProperty));
Storyboard.SetTarget(animation, brush);
}
storyBoard.Begin();
Этот код просто ничего не делает (что я вижу ...).
Редактировать: Все еще не уверен в том, что проблема с методом SetTarget, либо ошибка, либо я просто не использую, как должно быть. В любом случае, я решил проблему, генерируя уникальные имена для своих кистей во время выполнения и используя метод SetTargetName.