我们可以有两个事件相同的代表吗?哪些具有相同数量的输入参数?或委托和事件有一对一的关系?我们可以有两个事件相同的代表
2
A
回答
4
当然,许多事件使用EventHandler作为简单的代理。
或者你的意思是说,你可以订阅许多事件到同一个方法?这也是可能的,您可以订阅将TextChanged-Events从所有文本框订阅到相同的委托。特别是对于验证和验证事件,对于使用相同验证逻辑的所有字段,只使用一种方法是有用的。
事件通常在.NET中进行多播,因此您可以将多个代理订阅到一个事件。例如,您可以为文本字段指定两个或三个验证方法,并将TextBox.Validating事件订阅到验证输入的一个方面的所有方法。
0
只要事件处理程序相同,就可以在任意数量的事件上拥有相同的处理程序。
从MSDN:
委托类型定义的集合被传递到处理该事件的方法的参数。 多个事件可以共享相同的委托类型,因此只有在没有声明合适的委托类型时才需要执行此步骤。
4
你的意思是使用相同的委托型两个不同的事件声明,或使用相同的委托例如订阅两个不同的事件?两者都允许:
public event EventHandler Foo;
public event EventHandler Bar;
...
EventHandler handler = SomeMethod;
Foo += handler;
Bar += handler;
相关问题
- 1. 我们可以有两个AWS NAT实例在相同的AZ
- 2. Git:我们可以比较两个相同文件的分步版本吗?
- 3. 我们可以为两个JavaScript文件添加相同的名称空间吗?
- 4. 我们可以拥有2个元素的相同ID吗?
- 5. 两个project.json文件可以共享相同的代码库吗?
- 6. 我们可以拥有两种具有相同扩展名的DSL语言吗?
- 7. 我可以假设两个具有相同System.identityHashCode的对象是相同的吗?
- 8. jQuery为两个不同的事件运行相同的代码
- 9. 我们可以有两个可执行文件在IZPack
- 10. 我可以有两个UIButton相同的标记
- 11. 我们可以用purrr(不是同时)迭代两个列表吗?
- 12. 你可以有两个相同的正则表达式,但指向他们不同的url文件
- 13. 我们可以使用Hadoop MapReduce合并两个文件代码
- 14. 我们可以在同一个EAR中有两个不同的jsf版本
- 15. 我们可以上传两个具有相同包标识符或相同名称的应用程序吗?
- 16. 我们可以为同一对表有多个连接表吗?
- 17. C++。我们可以有相同的命名功能,但在不同的文件?
- 18. 我们可以在Jess中统计具有相同值的事实吗?
- 19. 我们可以将hoverintent插件两次应用于相同的元素吗? (jQuery)
- 20. 我们可以保留python和php两个相同的Apache服务器?
- 21. 我们可以从相同的期望脚本启动两个ssh终端
- 22. 我们可以从Windows DLL导出相同的两个重载方法吗?
- 23. 我可以同时为两个属性声明相同的值:
- 24. VS2010:我们可以有多个如果在后生成事件?
- 25. 我可以有两列除了1列有相同的内容
- 26. 我们可以在同一个Angular2组件中有两种形式
- 27. 如果两件事并不相同,它们是否相等?
- 28. 我可以在同一个表中有两个唯一列吗?
- 29. 我们可以更新1个查询两个表的PostgreSQL
- 30. 我们可以在didFinishLaunchingWithOptions下添加两个不同的NSOperations