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 继承,因此每个 FrameworkElement 都有可能使用继承的值触发另一个 DataContextChanged 事件。 该事件源自继承元素,而不是父元素,一旦元素检测到其继承的 DataContext 值已更改。 如果不希望此行为,则应处理父源上的 DataContextChanged 事件,在该事件将首先发生。 作为处理程序逻辑的一部分,将事件数据中 DataContextChangedEventArgs
Handled 属性的值设置为 true
。 该操作将阻止事件路由到子元素。
注意
DataContextChanged 具有路由行为,但不是真正的路由事件, (它没有 RoutedEvent 标识符) 。 此外,它从父级路由到子级,而真正的路由事件从子路由到父级。 如果熟悉 wpf) Windows Presentation Foundation (,则 WPF 事件路由定义可将 DataContextChanged 视为隧道路由事件。
属性
Handled |
获取或设置一个值,该值影响是否应从继承 DataContext 值的子元素触发另一个 DataContextChanged 事件,并检测该值是否已更改。 |
NewValue |
获取触发 DataContextChanged 事件的元素的新 DataContext 值。 |