最明显一个区别就是委托可以=也可以+=;而事件只能+=,也就是只能订阅。只能+=意味着你无法影响其他订阅该事件的方法执行。而委托呢,只要一个=操作,你就等于破坏了别的方法执行。事件是必须要有的。比如obj.MouseDown += MyEventHandler(...); 如果像委托一样你obj.MouseDown=MyEventHandler(...),那就意味着别的订阅该事件的方法无法执行了。甚至一些系统预定义的,基类的而且事件也保证了EventHandler(object obj, EventArgs)时,传进来的obj肯定就是fire event的那个对象。
解决方案 »
- 菜鸟求教:C#中事件和与委托好像非常关联,但该怎么样去理解呢。
- OCX等COM控件的参数类型问题
- C#的一个winform程序,希望大家能给点意见
- 大家帮忙看看这个System.InvalidOperationException类型的异常是什么意思
- WPF,simplestyles是什么东西?
- 请问关于DataGrid数据不显示的问题
- ActiveX 打包cab 以后页面不下载安装
- 谁知道哪里可以在线看电影啊,(要是免费的啊)
- c#调用存储过程,并返回数据集
- 求教将EXCEL的单元格数据转为string类型
- UDP通讯获取对方外网ip的问题。
- VS.NET的.dll组件生成后,如何配置成DCOM组件。供远程调用。
也谢谢namhyuk
小菜会继续努力的