How do I use RemoveHandler
with anonymous methods?
This is how I add a handler for MyEvent
event of the class MyClass
:
AddHandler MyClass.MyEvent, Sub()
'...
End Sub
How do I then use RemoveHandler
to remove the handler for the MyEvent
event?
In general, if you need to unsubscribe from the event, I would recommend not using a lambda like this, and instead use a standard method.
That being said, you can still use the anonymous method, but you need to store a reference to it for the unsubscription. If you must unsubscribe an anonymous method, at a minimum, you should store the delegate in a variable to remove it later:
Dim subscription = Sub() ' ... End Sub AddHandler MyClass.MyEvent, subscription ' Later RemoveHandler MyClass.MyEvent, subscription
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With