Некоторое время я боролся с управлением прокруткой в стиле выделения.
В данный момент я застрял с шаблонным ItemsControl:
<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 привязан к ObservableCollection,так что я могу добавлять предметы во время выполнения.Как только элемент выходит за пределы экрана, он удаляется из ObservableCollection.
Последнее, что нужно сделать, - реализовать пользовательское поведение добавления элементов (плавное скольжение вместо поведения insert-translateothers).Должен ли я использовать StackPanel для достижения такого эффекта или просто выполнить DoubleAnimation для добавляемого элемента?Любые предложения приветствуются.