zoukankan      html  css  js  c++  java
  • WPF中路由事件的传播

    路由事件(RoutedEvent)是WPF中新增的事件,使用起来与传统的事件差别不大,

    但传播方式是完全不同的。

    路由事件的传播方式

           通过RoutingStrategy来定义传播的方式

        public enum RoutingStrategy
        {
            Tunnel = 0, //隧道,由顶层元素向内传播,事件一般以Preview开头
            Bubble = 1, //冒泡,与隧道相反,向外传播
            Direct = 2, //直接,与传统的事件相似
        }

          WPF中的路由事件用的最多的就是Tunnel和Bubble这两种传播方式,所以一般路由事件都是成对出现,

       如:PreviewMouseLeftDownMouseLeftDown

       注意:Tunnel事件总是比Bubble事件先执行,如果在Tunnel事件中设置了Handled = true,那么成对的Bubble事件将不会发生,因为它们共享同一个RoutedEventArgs类的实例,在转播的过程中设置了Handled = true, 路由事件还是会继续传播,只是不会执行。

    更多更详细的内容请参考:

    WPF快速入门系列(3)——深入解析WPF事件机制

  • 相关阅读:
    ASP.NET 篇
    .NET Core 篇
    JS-CSS篇
    IIS使用篇
    WebService篇
    电脑使用篇
    数据库使用篇
    正则表达式篇
    Linux学习篇
    Leetcode 198. 打家劫舍 dp
  • 原文地址:https://www.cnblogs.com/tommy-huang/p/6626101.html
Copyright © 2011-2022 走看看