栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何将事件传递给方法?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何将事件传递给方法?

我的原始答案适合在定义事件的类中使用,但是您已经更新了问题,以反映您希望从定义类之外完成此操作,因此,我已将其删除。

只有定义事件的类才能引用该事件使用的隐式委托变量。在该类之外,您只能通过和来访问

add
remove
方法。这意味着您不能直接执行您要问的事情。但是,您可以使用功能性方法。
+=``-=

class A{    public event EventHandler Event1;    public void TriggerEvent1(){        if(Event1 != null) Event1(this, EventArgs.Empty);    }}class B{    static void HandleEvent(object o, EventArgs e){        Console.WriteLine("Woo-hoo!");    }    static void AttachToEvent(Action<EventHandler> attach){        attach(HandleEvent);    }    static void Main(){        A a = new A();        AttachToEvent(handler=>a.Event1 += handler);        a.TriggerEvent1();    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/386456.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号