C#:引发继承的事件

C#:引发继承的事件,第1张

C#:引发继承的事件

您要做的是:

在基类(已声明事件的位置)中,创建可用于引发事件的受保护方法:

public class MyClass{   public event EventHandler Loading;   public event EventHandler Finished;   protected virtual void onLoading(EventArgs e)   {       EventHandler handler = Loading;       if( handler != null )       {handler(this, e);       }   }   protected virtual void onFinished(EventArgs e)   {       EventHandler handler = Finished;       if( handler != null )       {handler(this, e);       }   }}

(请注意,您可能应该更改这些方法,以检查是否必须调用事件处理程序)。

然后,在从该基类继承的类中,您只需调用OnFinished或OnLoading方法来引发事件:

public AnotherClass : MyClass{    public void DoSomeStuff()    {        ...        onLoading(EventArgs.Empty);        ...        onFinished(EventArgs.Empty);    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5427603.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存