委托和事件

原创 2007年09月25日 16:29:00

主要过程如下:
1.在后台代码中,我们可以定义处理程序方法alartRang
2.然后定义委托,引用到处理程序方法的实例。
3.最后将委托添加到事件中。
从而,引发事件时就会调用相关的事件处理方法。

若要使用在另一个类中定义的事件,必须定义和注册一个事件处理程序。事件

处理程序必须具有与为事件声明的委托相同的方法签名。通过向事件添加事件

处理程序可注册该处理程序。向事件添加事件处理程序后,每当该类引发该事

件时都会调用该方法。

有关阐释引发和处理事件的完整示例,请参见如何:引发和使用事件。

为事件添加事件处理程序方法
定义一个具有与事件委托相同的签名的事件处理程序方法。

public class WakeMeUp
{
    // AlarmRang has the same signature as AlarmEventHandler.
    public void AlarmRang(object sender, AlarmEventArgs e)
    {...};
    ...

使用对该事件处理程序方法的一个引用创建委托的一个实例。调用该委托实例

时,该实例会接着调用该事件处理程序方法。

// Create an instance of WakeMeUp.
WakeMeUp w = new WakeMeUp();

// Instantiate the event delegate.
AlarmEventHandler alhandler = new AlarmEventHandler(w.AlarmRang);

将该委托实例添加到事件。引发该事件时,就会调用该委托实例及其关联的事

件处理程序方法。

C#  复制代码
// Instantiate the event source.
AlarmClock clock = new AlarmClock();

// Add the delegate instance to the event.
clock.Alarm += alhandler;

 

相关文章推荐

.net C# 泛型事件委托

  • 2017年09月30日 16:49
  • 3.16MB
  • 下载

委托与事件

  • 2014年04月09日 18:20
  • 61KB
  • 下载

C#事件委托和回调的用法区别

事件包括:事件发送者、事件接收者和事件处理程序。 关于事件,我们首要知道的是事件的发送者必须知道发送什么类型的事件,以及相关 的事件参数。而事件的接收者必须了解其事件的处理方法必须使用的返回类型和...

事件委托流程

  • 2014年07月30日 22:44
  • 45KB
  • 下载

JQ_事件委托_闭包_自调用函数

事件委托 1 2 3 4 5 var fj = document.getElemen

线程-异步事件委托

  • 2015年02月10日 12:06
  • 70KB
  • 下载

C# 事件委托实例

  • 2015年06月12日 15:54
  • 32KB
  • 下载

关于jquery的事件委托-bind,live,delegate,on的区别发展

事件委托:让利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行! .bind()只能给调用它的时候已经存在的元素绑定事件,不能给未来新增的元素绑定事件。 jQuery 1.3新增的.liv...

委托与事件

  • 2016年11月17日 15:58
  • 277KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:委托和事件
举报原因:
原因补充:

(最多只允许输入30个字)