C#如何使用delegate类型设计自定义事件

2023-05-10

这篇文章主要介绍C#如何使用delegate类型设计自定义事件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

使用delegate类型设计自定义事件

在C#编程中,除了Method和Property,任何Class都可以有自己的事件(Event)。定义和使用自定义事件的步骤如下:

(1)在Class之外定义一个delegate类型,用于确定事件程序的接口

(2)在Class内部,声明一个public event变量,类型为上一步骤定义的delegate类型

(3)在某个Method或者Property内部某处,触发事件

(4)Client程序中使用+=操作符指定事件处理程序

例子: // 定义Delegate类型,约束事件程序的参数

public delegate void MyEventHandler(object sender, long lineNumber) ;  
public class DataImports  {  
// 定义新事件NewLineRead  
public event MyEventHandler NewLineRead ;  
public void ImportData()  {  
long i = 0 ; // 事件参数  
while()  {  
i++ ;  // 触发事件  
if( NewLineRead != null ) 
NewLineRead(this, i);  
//...  }  
//...  }  
//...  }  
// 以下为Client代码  
private void CallMethod()  {  
// 声明Class变量,不需要WithEvents  
private DataImports _da = null;  
// 指定事件处理程序  
_da.NewLineRead += new MyEventHandler(this.DA_EnterNewLine) ;   
// 调用Class方法,途中会触发事件  
_da.ImportData();  }  
// 事件处理程序  
private void DA_EnterNewLine(object sender, long lineNumber)  {  
// ...  }

以上是“C#如何使用delegate类型设计自定义事件”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注本站行业资讯频道!

《C#如何使用delegate类型设计自定义事件.doc》

下载本文的Word格式文档,以方便收藏与打印。