c# - 检查事件处理程序是否存在

标签 c# event-handling

this post 开始- 当我只希望触发一个处理程序事件时,使用建议的 -= 然后 += 方法有什么缺点?

_value.PropertyChanged -= _handlerMethod;
_value.PropertyChanged += _handlerMethod;

最佳答案

这并不能保证只有一个处理程序被触发。

另一个位置可能会多次为您的处理程序订阅您的事件。在这种情况下,您只会删除第一个处理程序调用。

通过检查事件的调用列表,如果您真的只想一次订阅一个处理程序,您可以保证此行为。

关于c# - 检查事件处理程序是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1784587/

相关文章:

c# - Entity Framework 上的多态交叉关联

javascript - jquery on ('click' ) vars 引用的多个元素的处理程序

javascript - 为什么这个 <li> 上的事件处理程序没有被调用?

c# - 如何使用 EventWaitHandle 创建事件?

c# - 为什么事件不支持绑定(bind)继承类型?

c# - 使用 Instagram API 将图片上传到 Instagram

c# - 遍历数据网格的行

c# - 我可以通过 .Net 获取与已安装打印机关联的图标吗?

c# - "dynamic"关键字和 JSON 数据

javascript - event.preventDefault() 与返回 false