事件处理现在让听众感到困惑

时间:2012-08-11 12:29:00

标签: c# asp.net .net wpf event-handling

我认为我对事件处理有很好的理解,直到现在我正在阅读Routed Events Overview,其中提到了事件监听器

这是我的理解

<!-- Sources -->
<Button x:Name="aButton" Click="MyHandler" />
or
<asp:Button ID="aButton" OnClick="MyHanlder" />

//handler
protected void MyHanlder(object source, EventArgs e)
{

}

在文档中,什么是路由事件部分

下有此声明
  

事件可以在元素树根处的侦听器上调用处理程序,然后路由到   沿树节点的连续子元素路由到事件源

的节点元素

从我上面展示的代码中我知道这些(如果我错了请纠正我):

  • EventHandler MyHanlder(....)
  • 事件来源aButton

问题是我无法理解这里的事件监听器是什么

2 个答案:

答案 0 :(得分:1)

事件侦听器只是事件处理程序的另一个名称。

从具有处理程序的对象的角度来看,它有一个处理程序 (该对象实现了一个处理程序。)

从调用听众的对象的角度来看,它是一个倾听者 (该对象调用一个监听器。)

他们是一回事。

答案 1 :(得分:0)

事件列表器是布局中的一个元素,如下所述:http://msdn.microsoft.com/en-us/library/ms742806.aspx

  

路由事件侦听器和路由事件源不需要共享   层次结构中的常见事件。任何UIElement或ContentElement都可以   成为任何路由事件的事件监听器。因此,你可以使用   整个工作API集中可用的完整路由事件集   应用程序中不同元素的概念“界面”   可以交换活动信息。这种“接口”概念用于路由   事件特别适用于输入事件。