У меня есть ListBox, содержащий большое количество элементов управления изображением.Источником каждого изображения является URI на удаленном сервере.Около 20 изображений видны одновременно (панель представляет собой VirtualizingStackPanel), и каждый раз при прокрутке ListBox для визуализации изображений требуется несколько секунд, что приводит к крайне медленной прокрутке.Изображения небольшие (по 5-7 Кбайт) и не требуют изменения размера.
Когда источником является локальный URI, производительность хорошая.Изображения обслуживаются сервером nginx и почти мгновенно отображаются в браузере.
Мой вопрос:
- Есть ли лучший способ отобразить эти изображения в WPF?
- Если это лучший способ, как мне начать отслеживатьузкое место?
РЕДАКТИРОВАТЬ:
ListBox заполняется путем привязки к коллекции.Это XAML DataTemplate, установленного как ItemTemplate ListBox:
<ListBoxItem>
<StackPanel>
<TextBlock Text="{Binding Path=Title}" />
<Image Width="50" Margin="0">
<Image.Source>
<BitmapImage UriSource="{Binding Path=ImageUri}" DecodePixelWidth="50" />
</Image.Source>
</Image>
</StackPanel>
</ListBoxItem>