加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 将静态方法与事件处理程序一起使用

发布时间:2020-12-16 01:52:53 所属栏目:百科 来源:网络整理
导读:我继承了一个拥有大量静态方法的C#(.NET 2.0)应用程序.我需要将其中一种方法转换为基于异步事件的方法.当方法完成后,我想触发一个事件处理程序.我的问题是,我可以从静态方法中触发事件处理程序吗?如果是这样,怎么样? 当我谷歌时,我只找到IAsyncResult示例.
我继承了一个拥有大量静态方法的C#(.NET 2.0)应用程序.我需要将其中一种方法转换为基于异步事件的方法.当方法完成后,我想触发一个事件处理程序.我的问题是,我可以从静态方法中触发事件处理程序吗?如果是这样,怎么样?

当我谷歌时,我只找到IAsyncResult示例.但是,我希望能够执行以下操作:

EventHandler myEvent_Completed;
public void DoStuffAsync()
{
  // Asynchrously do stuff that may take a while
  if (myEvent_Completed != null)
    myEvent_Completed(this,EventArgs.Empty);
}

谢谢!

解决方法

过程完全相同,唯一的区别是没有真正的这个参考.

static EventHandler myEvent_Completed;

public void DoStuffAsync()
{
    FireEvent();
} 

private static void FireEvent()
{
    EventHandler handler = myEvent_Completed;

    if (handler != null)
        handler(null,EventArgs.Empty);
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读