Kolumne: WPF und Windows-Apps

XAML-Tipp: WPF – Nur den sichtbaren Bereich rendern
Keine Kommentare

In der Kolumne „XAML Expertise“ präsentiert Gregor Biswanger Top-How-tos zum Thema XAML. Einsteiger und fortgeschrittene XAML-Experten sollen hier durch geballtes Wissen gesättigt werden. Heute gibt es folgende Expertise: „WPF: Nur den sichtbaren Bereich rendern“.

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>

 

API Summit 2018

Moderne APIs mit ASP.NET Core MVC und SignalR – End-to-End

mit Sebastian Gingter und Manuel Rauber (Thinktecture AG)

Azure in Action: Pragmatische Cloud-Lösungen für alle

mit Thorsten Hans und Christian Weyer (Thinktecture AG)

Aufmacherbild: Young man driving in imaginary fast car via Shutterstock / Urheberrecht: ra2studio

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -