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

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

专注于为中小企业提供网站建设、成都网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业贵溪免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

使用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类型设计自定义事件
文章地址:http://hbruida.cn/article/igdicd.html