码迷,mamicode.com
首页 > 其他好文 > 详细

冒泡事件和预览事件(隧道事件)

时间:2015-07-22 20:55:41      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:

什么是路由事件?

MSDN定义如下:

功能定义:路由事件是一种可以针对元素树中的多个侦听器(而不是仅针对引发该事件的对象)调用处理程序的事件。

实现定义:路由事件是一个 CLR 事件,可以由 RoutedEvent 类的实例提供支持并由 Windows Presentation Foundation (WPF) 事件系统来处理。 

     

中断事件路由
所有的路由事件都共享一个公共的事件数据基类 RoutedEventArgs RoutedEventArgs 定义了一个采用布尔值的 Handled 属性。 Handled 属性的目的在于,允许路由中的任何事件处理程序通过将 Handled 的值设置为 true 来将路由事件标记为“已处理”。 


冒泡事件和预览事件(隧道事件)的区别?

冒泡事件表示事件从元素树向上到达根元素。这样您就可以在源元素的上方层级对象处理事件。例如,您可向嵌入的 Grid 元素附加一个 Button.Click 处理程序,而不是直接将其附加到按钮本身。气泡事件有指示其操作的名称(例如,MouseDown)。

隧道事件表示事件从根元素开始向下遍历元素树。这样上游元素就可以在事件到达源元素之前先行截取并进行处理。根据命名惯例,隧道事件带有前缀 Preview(例如 PreviewMouseDown)。 


http://www.cnblogs.com/luminji/archive/2011/02/04/1949142.html

版权声明:本文为博主原创文章,未经博主允许不得转载。

冒泡事件和预览事件(隧道事件)

标签:

原文地址:http://blog.csdn.net/ilipan/article/details/47008569

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!