问题:我有一个包含对象列表的文档类。这些对象会引发诸如SolutionExpired
,DisplayExpired
等事件。文档需要对此作出响应。一次移除所有事件处理程序
文档有时可以交换对象,但单个对象不应该是多个文档的“部分”。
我的文档类包含一堆用作事件处理程序的方法。无论何时一个物体进入文档,我使用AddHandler
来设置事件,并且每当从文档中移除一个物体时,我使用RemoveHandler
来解除损坏。但是,有些情况下很难确保所有的步骤都被正确地采用,并且因此我最终可能会成为流氓事件处理程序。
长话短说;我如何删除指向特定方法的所有处理程序?请注意,我没有潜在的事件源列表,这些可能存储在任何地方。
喜欢的东西:
RemoveHandler *.SolutionExpired, AddressOf DefObj_SolutionExpired
可能的重复[如何从控件中删除所有事件处理程序](http://stackoverflow.com/questions/91778/how-to-remove-all-event-handlers-from-a-control) – ChrisF 2012-03-03 19:02:28
可能重复[如何从控件中删除所有事件处理程序](https://stackoverflow.com/questions/91778/how-to-remove-all-event-handlers-from-a-control) – 2017-09-26 13:49:18