In der Datenbindung in Silverlight 3 gibt es zahlreiche Verbesserungen. Die wichtigste: Endlich werden ElementBindings unterstützt, als Datenbindung direkt auf andere UI Elemente.
<TextBox Text="{Binding ElementName=Slider1,Path=Value,Mode=TwoWay}" />
<Slider x:Name="Slider1" Minimum="0" Maximum="100"/>
In diesem kleinen Beispiel, sind TextBox und Sliderwert miteinander verbunden, und zwar in beide Richtungen. Das heißt, der Slider ändert den TextBox Text, und umgekehrt.

Dadurch erspart man sich den Umweg über ein Objekt im Hintergrund, das bisher die Daten halten musste.
Zweite große Neuerung ist die Anzeige von Fehlern bei Datenbindungen (Error Validation).
<TextBox Grid.Column="1" Grid.Row="0"
Text="{Binding Path=Vorname, Mode=TwoWay,
NotifyOnValidationError=True,
ValidatesOnExceptions=True}" />
Mit zwei Eigenschaftswerten kann die Validierung beeinflusst werden.
ValidatesOnExceptions gibt an, dass Exceptions, die bei Update der Datenquelle gefeuert werden, als Fehler behandelt und angezeigt werden sollen.

Der angezeigt Text entspricht der Message der gefeuerten Exception.
NotifyOnValidationError aktiviert ein Event mit Namen BindingValidationError auf dem jeweiligen Control, das immer dann gefeuert wird, wenn Fehler auftreten oder verschwinden.
Schließlich gibt es noch ein neues Control, ValidationSummary, welches alle aufgetretenen Fehler in einer Form subsummiert.

Fazit: Diese Neuerungen in der Datenbindung bieten gute Möglichkeiten, ähnlich denen von ASP.NET, um Datenvalidierung durchzuführen.
knom