ItemsControl があり、その ItemsSource は ObservableCollection です。また、各 MyPerson を表示するための DataTemplate もあります。
<ItemsControl Name="ic_People" ItemTemplate="{StaticResource dtPerson}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
DataTemplate 自体は少し複雑ですが、その一部は Image です。
コード ビハインドでは、これらの DataTemplates の一部またはすべてを、イメージを移動して (Canvas.Top などを使用して) アニメーション化したいと考えています。
私のコードビハインドはここで動かなくなりました。
Storyboard sb = new Storyboard();
DoubleAnimation da = new DoubleAnimation();
da.From = 0;
da.By = 68;
da.Duration = new Duration(TimeSpan.FromSeconds(.2));
sb.Children.Add(da);
object prop = Canvas.TopProperty;
Storyboard.SetTargetProperty(da, new PropertyPath(prop));
sb.Begin(???, true); <---- needs a FrameworkElement
ObservableCollection にアクセスできます。FrameworkElement として DataTemplate または Person にアクセスするにはどうすればよいですか (これは Begin メソッドが必要とするものです)。ありがとう