Kolumne: WPF und Windows-Apps

XAML-Tipps: WPF – Verzögertes Rendern beim Scrollen
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: Verzögertes Rendern beim Scrollen“.

Die Inhaltssteuerelemente mit komplexen DataTemplates und zahlreichen Daten können ein flüssiges Scrollen verhindern. Das liegt daran, dass der Rendervorgang und die Threads enorm viel Arbeit bekommen und die CPU-Auslastung damit sehr hoch wird.

WPF: Flüssiges Scrollen – so funktioniert´s

Eine mögliche Lösung kann das Auslagern an die GPU mittels BitmapCache sein. Sind im DataTemplate allerdings interaktive Steuerelemente vorhanden, kann das unerwünschte Seiteneffekte hervorrufen. Eine Alternative bietet das Attached Property ScrollViewer.IsDeferredScrollingEnabled, das für ein verzögertes Rendern sorgt. So wird das Inhaltssteuerelement erst gerendert, wenn der Benutzer die Maustaste wieder loslässt. Listing 1 zeigt dessen Einsatz bei einer ListBox.

<ListBox ItemsSource="{Binding Products}" Width="300"
         ScrollViewer.IsDeferredScrollingEnabled="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: Computer mouse isolated on the yellow background via Shutterstock / Urheberrecht: Garsya

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 -