Welcome

首页 / 软件开发 / C# / C#编程利器之四:委托与事件(Delegate and event) (下)

C#编程利器之四:委托与事件(Delegate and event) (下)2011-08-16 博客园 Beniao二、事件

1.了解概念

事件就是当对象或类状态发生改变时,对象或类发出的信息或通知。发出信息的对象或类称为"事件源 ",对事件进行处理的方法称为"接收者",通常事件源在发出状态改变信息时,它并不知道由哪个事件接收者 来处理.这就需要一种管理机制来协调事件源和接收者,C++中通过函数指针来完成的.在C#中事件使用委托 来为触发时将调用的方法提供类型安全的封装。

在介绍事件之前我们先来了解几个事件的基本概念和几个重要素:

--事件的本质

-事件是特殊的委托实例

-事件关键字:event

--事件的四个要素:

-定义事件

-激发事件

-监听事件

-执行事件

2.事件分析

在.NET中,很多控件都有相关的事件,如Button的Click事件,它能响应鼠标的单击事件。

--定义事件

public delegate void EventHandler(object sender,EventArgs e);

public event EventHandler Click;

--激发事件:单击鼠标

--监听事件

this.button1.Click+=new EventHandler(this.button1_Click);

--执行事件

public void button1_Click(object sender,EventArgs e)

//实现略

}

上面这个button的Click事件是我们最常见的,这里展示出了整个事件过程。接下来我们来看看一个简 单的事件实例。