2009-03-12 16 views
27

Projemde ObservableCollection'a bağlı bir WPF Listbox'ım var. Koleksiyona yeni bir öğe eklediğimde, aynı öğe otomatik olarak Liste kutusuna eklenir. Listbox'taki öğeleri görüntülemek için bir XAML Datatemplate kullanın.Öğe, Listbox'a eklendiğinde WPF Datatemplate Animate?

Yapmak istediğim, bir öğeyi Koleksiyon/Liste kutusuna eklendiğinde bir kez canlandır. Bu yapılabilir mi? Datatemplate'de animasyon olarak belki? Sanırım bir şekilde bu canlandırmayı başlatmak için bir tetiklemeye ihtiyacım var ama yeni bir öğe/veri sayfası eklendiğinde tetik tetikleniyor?

cevap

25

FrameworkElement.Loaded yönlendirilmiş olayı için bir olay tetikleyicisi çalışabilir düşünüyorum. Örneğin:

<DataTemplate DataType="{x:Type l:Foo}"> 
    <Button x:Name="Button" Content="{Binding Path=Bar}"> 
     <Button.Background> 
      <SolidColorBrush x:Name="ButtonBrush" Color="Tan" /> 
     </Button.Background> 
    </Button> 
    <DataTemplate.Triggers> 
     <EventTrigger RoutedEvent="FrameworkElement.Loaded" SourceName="Button"> 
      <BeginStoryboard> 
       <Storyboard> 
        <ColorAnimation Storyboard.TargetName="ButtonBrush" Storyboard.TargetProperty="Color" To="Red" /> 
       </Storyboard> 
      </BeginStoryboard> 
     </EventTrigger> 
    </DataTemplate.Triggers> 
</DataTemplate> 
+0

Bir rüya gibi çalışır! Teşekkürler – TalkingCode

+0

Güzel numara, tnx! =) –

İlgili konular