WPF, Silverlight, Silverlight for Windows Phone und Metro Style Apps

WPF: Elegant mit Null beim Data Binding umgehen
Kommentare

In der neuen Kolumne „XAML Expertise“ des Windows Developer 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: Elegant mit Null beim Data Binding umgehen“.

Das Unangenehme am Data Binding sind Properties mit Null-Werten. Denn diese werden beim Data Binding einfach durch Exceptions im Hintergrund verschluckt. Nur durch das Output-Fenster kann während der Laufzeit ermittelt werden, ob es hierbei Probleme gab. Ein gängiger Workaround war das behandeln von Null-Werten mittels ValueConverter. Ist eine Instanz Null, wird einfach ein Standardwert zurückgegeben. Jedoch muss das wiederholt bei jeder Binding-Deklaration erfolgen. Wird dann mal explizit ein ValueConverter benötigt, steigert das sofort die Komplexität. So macht XAML dann auf keinen Fall Spaß.

Um das zu verhindern, gibt es bereits ab dem .NET Framework 3.5 eine elegante Lösung: Das Binding Property TargetNullValue. Es wird einfach beim Data Binding mit einem Standardwert bestückt. Im Idealfall gleich mit einem String-Wert. Unter Listing 1 und 2 wird der Einsatz nochmal genauestens gezeigt.

Listing 1: TargetNullValue mit Standardwert

                         

Listing 2: TargetNullValue mit einem leeren String-Wert

                                            
Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -