标签: c# winforms events event-handling textchanged
我想有条件地取消挂钩事件处理程序。这是正确的方法:
tb.TextChanged -= textBoxIntName_TextChanged;
这似乎是明智的,因为它需要连接起来:
tb.TextChanged += textBoxIntName_TextChanged;
...但似乎对应于" Delphi方式"使得更多或更有意义(但唉,它不编译):
tb.TextChanged = nil;
答案 0 :(得分:5)
您无法分配事件 - 只有附加(+ =)和删除( - =)操作可供客户使用。
详细了解活动here。
C#规范says:
由于+ =和 - =是事件允许的唯一操作 在声明事件的类型之外,外部代码可以添加和 删除事件的处理程序,但不能以任何其他方式获取或 修改事件处理程序的基础列表。