Gewusst wie: Einrichten von Benachrichtigungen über Bindungsaktualisierungen

In diesem Beispiel wird erläutert, wie Sie Benachrichtigungen einrichten können, die Sie darüber informieren, wenn die Eigenschaft „Bindungsziel (Ziel)“ oder „Bindungsquelle (Quelle)“ einer Bindung aktualisiert wurde.

Beispiel

Bei jeder Aktualisierung der Bindungsquelle oder des Bindungsziels löst Windows Presentation Foundation (WPF) ein Datenaktualisierungsereignis aus. Intern veranlasst dieses Ereignis die Benutzeroberfläche (User Interface, UI), eine Aktualisierung durchzuführen, weil sich die gebundenen Daten geändert haben. Beachten Sie, dass Sie Ihre Datenklasse mithilfe der INotifyPropertyChanged-Schnittstelle implementieren müssen, damit diese Ereignisse sowie unidirektionale bzw. bidirektionale Bindungen ordnungsgemäß funktionieren. Weitere Informationen finden Sie unter Implementieren von Benachrichtigungen bei Eigenschaftenänderungen.

Legen Sie die NotifyOnTargetUpdated- oder NotifyOnSourceUpdated-Eigenschaft (oder beide) in der Bindung true fest. Der Handler, den Sie zur Überwachung dieses Ereignisses bereitstellen, muss direkt an das Element angefügt werden, über dessen Änderungen Sie informiert werden möchten. Oder er muss an den Gesamtdatenkontext angefügt werden, wenn Sie über Änderungen am Kontext informiert werden möchten.

Im folgenden Beispiel wird erläutert, wie Sie Benachrichtigungen für die Aktualisierung einer Zieleigenschaft einrichten.

<TextBlock Grid.Row="1" Grid.Column="1" Name="RentText"
           Text="{Binding Path=Rent, Mode=OneWay, NotifyOnTargetUpdated=True}"
           TargetUpdated="OnTargetUpdated"/>

Anschließend können Sie zur Behandlung des Ereignisses einen Handler auf Grundlage des EventHandler<T>-Delegaten einrichten, in diesem Beispiel OnTargetUpdated:

private void OnTargetUpdated(object sender, DataTransferEventArgs args)
{
    // Handle event
}
Private Sub OnTargetUpdated(sender As Object, e As DataTransferEventArgs)
    ' Handle event
End Sub

Parameter des Ereignisses können zur Ermittlung von Details über die geänderte Eigenschaft (z. B. den Typ oder das jeweilige Element, wenn derselbe Handler an mehrere Elemente angefügt ist) verwendet werden. Diese Details können hilfreich sein, wenn es für ein einzelnes Element mehrere gebundene Eigenschaften gibt.

Weitere Informationen