Skip to content

Latest commit

 

History

History
26 lines (17 loc) · 2.33 KB

datacontextchangedeventargs.md

File metadata and controls

26 lines (17 loc) · 2.33 KB
-api-id -api-type
T:Windows.UI.Xaml.DataContextChangedEventArgs
winrt class

Windows.UI.Xaml.DataContextChangedEventArgs

-description

Provides data for the DataContextChanged event.

-remarks

The FrameworkElement.DataContext property has a built-in behavior whereby its value inherits to all FrameworkElement child elements of a FrameworkElement where a DataContext value is set. This behavior enables a set of related elements to use the same context to bind to different source properties, which is particularly useful for item templates, data templates, and other data binding scenarios. Because DataContext inherits, there's potential for each FrameworkElement that uses the inherited value to fire another DataContextChanged event. That event is sourced from the inheriting element, not the parent element, once the element detects that its inherited DataContext value has changed. If you don't want this behavior, you should handle the DataContextChanged event on the parent source, where the event will occur first. As part of your handler logic, set the value of the Handled property in the DataContextChangedEventArgs event data to true. That action will prevent the event from routing to child elements.

Note

DataContextChanged has routing behavior but isn't a true routed event (it does not have a RoutedEvent identifier). Also, it routes from parent to child whereas the true routed events route from child to parent. If you're familiar with Windows Presentation Foundation (WPF), DataContextChanged might be considered a tunneling routing event by the Windows Presentation Foundation (WPF) event routing definitions.

-examples

-see-also

DataContextChanged, DataContext