当代表可以完成工作时,事件的用途是什么

时间:2014-01-05 20:27:22

标签: c# events delegates

我正在尝试理解自定义代理可以直接调用添加到调用列表的方法列表时对事件的需求。

如果问题太愚蠢,我道歉,但这是我长期以来试图理解的事情。

2 个答案:

答案 0 :(得分:4)

它们本质上是相同的,但简单的区别在于可以从任何范围(可见性允许)调用委托,但事件只能由声明它的类的成员调用。

答案 1 :(得分:2)

如果您使用代理而未确定是事件。这意味着您班级的用户可以简单地设置他们的代理。下一个要做的就是基本清除前一个。

当您使用活动时,用户只能使用+= EventHandler“加入”,并且无法使用= EventHandler

关于事件的另一个问题是它们阻止用户调用委托。他们唯一能做的就是注册自己。