C# 自定义事件
来源:互联网 发布:java调用https接口 编辑:程序博客网 时间:2024/05/24 15:39
C#自定义事件和java有所不同,涉及到委托。下面代码包括自定义事件从事件定义到事件触发和执行的全过程。
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Timers;//using System.Timers;namespace EventTest{ //定义一个委托MessageHandler,可以看作是一个类。 public delegate void MessageHandler(string messageText); class Connections {//定义一个事件MessageArrive,是委托的实例 public event MessageHandler MessageArrive; private Timer pollTimer; private static Random random = new Random(); public Connections() { this.pollTimer = new Timer(); pollTimer.Elapsed += new ElapsedEventHandler(Display); } public void Connect() { pollTimer.Start(); } public void Disconnect() { pollTimer.Stop(); } public void Display(object source, ElapsedEventArgs e) { Console.WriteLine("New Message Coming"); if (random.Next(9) == 0 && MessageArrive != null) {//触发MessageArrive事件 MessageArrive("New Message Arrived, And has been handled successfully"); } } static void Main(string[] args) { Connections connector = new Connections(); Display displayor = new Display(); //将一个委托实例赋值给事件MessageArrive,参数为方法DisplayMessage,方法的参数要与委托类的参数一致。 connector.MessageArrive += new MessageHandler(displayor.DisplayMessage); connector.Connect(); Console.ReadKey(); } } public class Display { public void DisplayMessage(string text) { Console.WriteLine(text); } }}
- C#事件-自定义事件
- c#自定义事件
- C# 自定义事件处理
- c# 自定义事件
- c#自定义事件
- c# 自定义事件
- C#自定义事件
- C#委托、自定义、事件
- C#自定义事件
- C#自定义事件
- C# 自定义事件
- C# 自定义事件
- C#自定义事件
- C#自定义事件
- C# 实现自定义事件
- c# 自定义事件
- C# 自定义事件
- C# 自定义事件
- android通知栏响应事件
- java第五章
- C++面试问题集锦
- 黑马程序员---JDK1.5新特性
- IOS关于XIB文件和调试时候显示不一样问题
- C# 自定义事件
- 漫谈数据挖掘从入门到进阶
- 数据结构(三)——O(n2)排序
- Linux设备驱动开发详解-Note(10)--- Linux 文件系统与设备文件系统(2)
- CodeForces 219D Choosing Capital for Treeland (树形dp)
- 图像几何变换之图像位置变换之图像平移
- SharePoint PerformancePoint Service-PowerShell
- 海量数据处理之求1亿个整数中的最大的k个数
- 数据挖掘七步走