WPF: Nur den sichtbaren Bereich rendern
Bei richtig großen Daten kann es bis zur Anzeige zu lange dauern. Eine elegante Lösung wäre das Aufteilen der Daten, um die Navigation mittels Paging zu ermöglichen. Falls die Designvorgaben diese Methodik nicht zulassen, hilft ein verzögertes Rendern durch das Aktivieren der „Virtualization“. So wird nur der aktuell sichtbare Bereich von Inhaltssteuerelementen gerendert.
Das Feature wird über das Attached Property VirtualizingStackPanel.IsVirtualizing aktiviert. Listing 1 zeigt dessen Einsatz bei einer ListBox.
<ListBox ItemsSource="{Binding Products}" Width="300" VirtualizingStackPanel.IsVirtualizing="True"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <Image Source="{Binding Image}" Height="100"/> <StackPanel Margin="10,0"> <TextBlock Text="{Binding Name}" FontWeight="Bold" /> <TextBlock Text="{Binding Description}"/> <TextBlock Text="{Binding Price}" FontStyle="Italic"/> </StackPanel> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox>
Multithreading und Parallel Programming mit Delphi
mit Bernd Ua (Probucon)
Delphi Internals – über Klassen, Objekte und Co.
mit Stefan Glienke (Aagon)
Aufmacherbild: Young man driving in imaginary fast car via Shutterstock / Urheberrecht: ra2studio