Freigeben über


DataContextChangedEventArgs Klasse

Definition

public ref class DataContextChangedEventArgs sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DataContextChangedEventArgs final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class DataContextChangedEventArgs final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DataContextChangedEventArgs
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class DataContextChangedEventArgs
Public NotInheritable Class DataContextChangedEventArgs
Vererbung
Object Platform::Object IInspectable DataContextChangedEventArgs
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)

Hinweise

Die FrameworkElement.DataContext-Eigenschaft verfügt über ein integriertes Verhalten, bei dem ihr Wert an alle untergeordneten FrameworkElement-Elemente eines FrameworkElement erbt, in dem ein DataContext-Wert festgelegt ist. Dieses Verhalten ermöglicht es einer Gruppe verwandter Elemente, denselben Kontext zum Binden an verschiedene Quelleigenschaften zu verwenden, was besonders für Elementvorlagen, Datenvorlagen und andere Datenbindungsszenarien nützlich ist. Da DataContext erbt, gibt es Potenzial für jedes FrameworkElement , das den geerbten Wert verwendet, um ein anderes DataContextChanged-Ereignis auszulösen . Dieses Ereignis wird aus dem erbenden Element und nicht vom übergeordneten Element bezogen, sobald das Element erkennt, dass sich sein geerbter DataContext-Wert geändert hat. Wenn Sie dieses Verhalten nicht möchten, sollten Sie das DataContextChanged-Ereignis für die übergeordnete Quelle behandeln, in der das Ereignis zuerst auftritt. Legen Sie als Teil Ihrer Handlerlogik den Wert der Handled-Eigenschaft in den DataContextChangedEventArgs-Ereignisdaten auf true fest. Diese Aktion verhindert, dass das Ereignis an untergeordnete Elemente weitergeleitet wird.

Hinweis

DataContextChanged weist routingverhalten auf, ist aber kein wahres Routingereignis (es verfügt nicht über einen RoutedEvent-Bezeichner ). Außerdem wird von übergeordneten zu untergeordneten Ereignissen weitergeleitet, während die wahren Routingereignisse von untergeordneten zu übergeordneten Ereignissen weitergeleitet werden. Wenn Sie mit Windows Presentation Foundation (WPF) vertraut sind, kann DataContextChanged von den Windows Presentation Foundation -Ereignisroutingdefinitionen (WPF) als Tunnelroutingereignis betrachtet werden.

Eigenschaften

Handled

Ruft einen Wert ab, der beeinflusst, ob ein anderes DataContextChanged-Ereignis von untergeordneten Elementen ausgelöst werden soll, die den DataContext-Wert erben und erkennen, dass sich der Wert geändert hat, oder legt diesen fest.

NewValue

Ruft den neuen DataContext-Wert für das Element ab, in dem das DataContextChanged-Ereignis ausgelöst wurde .

Gilt für:

Weitere Informationen