一、事件的五个组成部分
事件的五个部分:
- 事件拥有者(对象)
- 事件成员(Event ,成员)
- 事件的响应者(对象)
- 事件处理器(成员,本质是一个回调方法)
- 事件订阅——把事件处理器与事件关联在一起
二、几个重要例子说明事件的使用
1、时钟的例子
◆问题提出:设置一个时钟,频率为1000毫秒,每隔1000毫秒就向控制台打印一行"hello,world";
分析:
- 事件拥有者:时钟对象(timer)
- 事件成员(即事件):Elapsed
- 事件的响应者:自定义的一个对象(print)
- 事件处理器:自定义对象的某个方法(action()方法)
- 事件订阅:timer.Elapsed += print.action;
代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Timers; namespace 事件_时钟的例子 { class Program { static void Main(string[] args) { Timer timer = new Timer(); //①事件拥有者(timer对象); timer.Interval = 1000; Print print = new Print(); timer.Elapsed += print.action;//②和⑤事件和事件订阅; timer.Start(); Console.ReadLine(); } } class Print //③事件响应者; { internal void action(object sender, ElapsedEventArgs e) //④事件处理器; { Console.WriteLine("hello,world"); } } }