DataContextChangedEventArgs クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
DataContextChanged イベントのデータを提供します。
public ref class DataContextChangedEventArgs sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class DataContextChangedEventArgs final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class DataContextChangedEventArgs
Public NotInheritable Class DataContextChangedEventArgs
- 継承
- 属性
注釈
FrameworkElement.DataContext プロパティには組み込みの動作があり、その値は、DataContext 値が設定されている FrameworkElement のすべての FrameworkElement 子要素に継承されます。 この動作により、関連する一連の要素が同じコンテキストを使用して異なるソース プロパティにバインドできるようになります。これは、項目テンプレート、データ テンプレート、およびその他のデータ バインディング シナリオに特に役立ちます。
DataContext は継承されるため、継承された値を使用して別の DataContextChanged イベントを発生させる FrameworkElement ごとに可能性があります。 そのイベントは、継承された DataContext 値が変更されたことを要素が検出すると、親要素ではなく継承要素からソース化されます。 この動作が必要ない場合は、親ソースで DataContextChanged イベントを処理する必要があります。ここで、イベントが最初に発生します。 ハンドラー ロジックの一部として、イベント データの Handled プロパティの値を DataContextChangedEventArgs
に true
設定します。 このアクションにより、イベントが子要素にルーティングされなくなります。
注意
DataContextChanged にはルーティング動作がありますが、真のルーティング イベントではありません ( RoutedEvent 識別子がありません)。 また、親から子にルーティングされますが、真のルーティング イベントは子から親にルーティングされます。 Windows Presentation Foundation (WPF) に精通している場合、DataContextChanged は WPF イベント ルーティング定義によってトンネリング ルーティング イベントと見なされる可能性があります。
プロパティ
Handled |
DataContext 値を継承し、値が変更されたことを検出する子要素から別の DataContextChanged イベントを発生させる必要があるかどうかを示す値を取得または設定します。 |
NewValue |
DataContextChanged イベントが発生した要素の新しい DataContext 値を取得します。 |