Freigeben über


Datenbindung

Browse sample.Beispiel ansehen

Eine .NET Multiplattform App UI (.NET MAUI) App besteht aus einer oder mehreren Seiten, von denen jede typischerweise mehrere Benutzerschnittstellen-Objekte, sogenannte Ansichten, enthält. Eine der Hauptaufgaben der App besteht darin, diese Ansichten zu synchronisieren und die verschiedenen Werte oder Auswahlen, die sie darstellen, zu verfolgen. Häufig stehen die Ansichten für Werte einer zugrunde liegenden Datenquelle, und die Benutzer passen die Ansichten an, um die Daten zu verändern. Wenn die Ansicht verändert wird, müssen die zugrunde liegenden Daten diese Änderung widerzuspiegeln. Ebenso muss die Ansicht Änderungen der Daten widerzuspiegeln.

Um diese Änderungen erfolgreich verarbeiten zu können, muss die App über Änderungen in diesen Ansichten oder den zugrunde liegenden Daten informiert werden. Dies kann durch das definieren von Ereignissen erreicht werden, die angeben, wenn eine Änderung vorgenommen wurde. Dann kann ein Ereignishandler installiert werden, der über die Änderungen informiert wird. Er reagiert, indem er Daten von einem Objekt zu einem anderen überträgt. Wenn es jedoch viele Ansichten gibt, müssen auch viele Ereignishandler vorhanden sein, was zu einer Menge Codebausteinen führt.

Die Datenbindung automatisiert diesen Prozess und macht Ereignishandler überflüssig. Datenbindungen können sowohl in XAML als auch in Code implementiert werden, sind aber in XAML weitaus häufiger, da sie dazu beitragen, die Größe der Code-Behind-Datei zu reduzieren. Durch das Ersetzen von prozeduralem Code in Ereignishandlern durch deklarativen Code oder Markup wird die App vereinfacht und klarer.

Datenbindung ist also die Technik der Verknüpfung von Eigenschaften zweier Objekte, so dass sich Änderungen in einer Eigenschaft automatisch in der anderen Eigenschaft widerspiegeln. Eines der beiden Objekte, das an einer Datenbindung beteiligt ist, ist immer ein von View abgeleitetes Element und ist Teil der visuellen Oberfläche einer Seite. Das andere Objekt ist eines der folgenden:

  • Ein weiteres View-Derivat, meist auf der gleichen Seite
  • Ein Objekt in einer Codedatei

Der Klarheit und Einfachheit halber werden in diesen Artikeln häufig Datenverbindungen zwischen zwei View-Ableitungen dargestellt. Die gleichen Prinzipien können jedoch auch auf Datenbindungen zwischen einem View-Objekt und einem anderen Objekt angewendet werden. Wenn eine Anwendung mit einer MVVM-Architektur (Model-View-ViewModel) erstellt wird, wird die Klasse mit den zugrunde liegenden Daten oft als ViewModel bezeichnet.

Wichtig

NET MAUI marshallt Bindungsaktualisierungen an den UI-Thread. Bei der Verwendung von MVVM können Sie datengebundene Viewmodel-Eigenschaften von jedem Thread aus aktualisieren, wobei das Bindungsmodul von .NET MAUI die Aktualisierungen an den UI-Thread weiterleitet.