2010-02-19 5 views
0

J'ai eu du mal avec un contrôle de défilement d'image de style.Stackpanel ajouter une animation d'objet

A un moment, je coincé avec ItemsControl templated:

<Window.Resources> 
    <DataTemplate x:Key="itemsTemplate"> 
     <Image Source="{Binding AbsolutePath}"></Image> 
    </DataTemplate> 
</Window.Resources> 
<ItemsControl ItemTemplate="{StaticResource itemsTemplate}" x:Name="ic" 
       ItemsSource="{Binding ElementName=mainWindow, Path=DataItems}" VirtualizingStackPanel.IsVirtualizing="True"> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <VirtualizingStackPanel Orientation="Vertical" VerticalAlignment="Bottom" 
            VirtualizingStackPanel.IsVirtualizing="True" >      
      </VirtualizingStackPanel> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 
</ItemsControl> 

ItemsControl est lié à ObservableCollection, donc je peux ajouter des éléments à l'exécution. Dès que l'élément disparaît de l'écran, il est retiré de ObservableCollection. La dernière chose à faire est de mettre en œuvre un comportement d'ajout d'élément personnalisé (glissement sans heurt au lieu du comportement insert-translateothers). Dois-je dériver de StackPanel pour obtenir un tel effet ou juste effectuer DoubleAnimation sur l'élément en cours d'ajout? Toute suggestion appréciée.

Répondre