NerdishByNature

WPF, MVVM, Dispatcher und AsyncOperation

Hier geht es um das Feedback für den User, wenn z.B. eine Liste grad gefiltert wird. Das Ganze mit Hilfe von MVVM, dem Dispatcher und einer AsyncOperation unter WPF.

Wird eine Liste gefiltert kann dies manchmal auch etwas länger dauern. Als Feedback für den Anwender benutze ich einen BusyIndicator als Ladeanzeige. Ich habe zwei ViewModels, FilterViewModel und MainViewModel. In dem MainViewModel gibt es ein Property “IsBusy” über welches ich den BusyIndicator steuer. In dem FilterViewModel gibt es eine Methode Filter, die das Filtern der Daten für die Liste übernimmt und am Anfang das “IsBusy” Property auf true setzt.
Bisher sieht meine Methode wie folgt aus:


MVVM: PropertyChanged ohne String-Parameter

Das MVVM Pattern lebt davon und sonst geht’s auch kaum ohne, wenn die Oberfläche auf Änderungen von Eigenschaften im Code reagieren soll. Die Implementierung des Interfaces INotifyPropertyChangedist hier das übliche Vorgehen. Im gleichen Atemzuge wird eine Hilfsmethode verwendet, die das Event PropertyChanged feuert.