C#中自定义事件的用法

2025-11-01 09:48:11

1、首先我们要说一下,事件的五要素:

事件源

事件

事件订阅

事件响应者

事件响应方法

如下图:

C#中自定义事件的用法

2、了解了事件五元素,

下面我们看看这五个元素都是怎么体现的。

新建控制台应用程序,如下图:

C#中自定义事件的用法

3、添加myTimer类,如下图:

C#中自定义事件的用法

4、下面重点来了,

在myTime类中,添加事件声明。

声明事件的格式是 “event 委托名 事件名”。

下面我们依次添加委托、事件。

如下图:

注意:声明委托的时候,一定要声明在namespace里。

          myTimer类发出Time事件,自然就是事件源喽。

          而事件就是Time事件。

C#中自定义事件的用法

5、C#的Timer类中有 Interval属性,

我们也添加一个。

顺便说一个小技巧,

输入prop四个字母,再按两下Tab键。

就可以快速添加属性。

如下图:

 

C#中自定义事件的用法

6、C#的Timer类,有Start方法。

我们也照方抓药,如下:

C#中自定义事件的用法

7、准备工作已经做好了,

我们来实现具体的代码。

如下:

C#中自定义事件的用法

C#中自定义事件的用法

8、如上一步骤所示:

我们添加了两个long类型的变量和两个方法。

其中onTime是用来触发事件的,自定义方法就这样触发。

CheckThread是用来实时监测是否到时间的。

下面在Main函数中,写测试程序。

如下图:

注意:在Main函数中写响应程序,自然Program类就是事件响应者了。

          timer.Timer += timer_Timer; 这一句就是事件订阅。

          timer_Timer()就是事件响应方法。

至此事件五元素都凑齐了,我们来看看是否能够事件计时功能。

C#中自定义事件的用法

9、运行结果如下:

可以看到输出的两个值相差1000,

满足要求。

C#中自定义事件的用法

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢