温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2022-03-15 09:50:34 来源:亿速云 阅读:211 作者:小新 栏目:移动开发

这篇文章主要介绍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类型设计自定义事件”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI