【问题标题】:Understanding Routing Events: Why I need both, bubble and tunnel events?了解路由事件:为什么我需要冒泡事件和隧道事件?
【发布时间】:2010-08-10 15:43:16
【问题描述】:

我阅读了 this 关于路由事件的好文章,我明白为什么我们有时需要冒泡事件,有时需要隧道事件。

我不明白的是,当我们使用隧道事件时,为什么在处理或到达源元素后,仍然会启动气泡事件?

提前致谢!

【问题讨论】:

    标签: wpf routed-events


    【解决方案1】:

    文章说,如果您将图像放在按钮上,然后单击该图像,则会触发该图像的隧道事件。但是您很可能还希望像单击按钮本身一样处理该单击,因此还会触发一个气泡事件,该事件会冒泡到按钮本身的单击事件(因为按钮拥有图像),所以您可以使用按钮的常用事件处理程序将图像单击视为按钮单击。

    【讨论】:

      【解决方案2】:

      我还想补充一点,(隧道和泡泡)的事件是不同的。 对于隧道,我们使用 PreviewXXX(例如:PreviewMouseDown),对于气泡事件,我们使用 XXX(例如:MouseDown)事件。

      按顺序,Tunnel 事件首先从应用程序的根开始触发,并在源端结束。并触发了 Bubble 事件。

      同时举办这两个活动非常有意义。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-05-20
        • 1970-01-01
        • 1970-01-01
        • 2019-06-16
        • 1970-01-01
        • 2013-09-07
        • 2011-03-18
        • 2014-03-07
        相关资源
        最近更新 更多