WPF学习系列026: 3.3.2 路由策略和事件处理程序

来源:互联网 发布:删除mysql注册表 编辑:程序博客网 时间:2024/06/16 17:47

 

  •  
    1. 路由策略是事件触发遍历整棵元素树的方式,由RoutingStrategy枚举值提供。
      1. Tunneling(管道传递)
    1. Bubbling(冒泡)
    1. Direct(直接)
    1. 路由事件的事件处理程序有两个参数
      1. System.Object对象,名为sender是该处理程序被添加到的元素
      2. System.EventArgs类,一般名为eRoutedEventArgs的一个实例,RoutedEventArgsEventArgs的一个子类,它提供了4个有用的属性
        1. Source:逻辑树中一开始触发该事件的元素。
        2. OriginalSource:可视树中一开始触发该事件的元素
        3. Handled:布尔值,设置为true表示标记事件为已处理,这就是用于停止TunnelingBubbling的标记。
        4. RoutedEvent:真正的路由事件对象(如Button.ClickEvent),当一个事件处理程序同时被用于多个路由事件时,它可以有效地识别被触发的事件。
  • 3.3.2  路由策略和事件处理程序

    事件首先在根元素上被触发,然后从每一个元素向下沿着树传递,直到到达源元素为止(或者直到处理程序把事件标记为已处理为止)。

    事件首先在源元素上被触发,然后从每一个元素向上沿着树传递,直到到达根元素为止(或者直到处理程序把事件标记为已处理为止)

    事件仅在源元素上触发。这与普通.NET事件的行为相同不同的是这样的事件仍然会参与一些路由事件的特定机制,如事件触发器。