removehandler remove net event vb.net anonymous-methods addhandler

vb.net - event - removehandler vb net



VB.NET RemoveHandler y métodos anónimos (1)

En general, si necesita darse de baja del evento, recomendaría no usar un lambda como este y, en su lugar, utilizar un método estándar.

Dicho esto, todavía puede utilizar el método anónimo, pero debe almacenar una referencia a él para la cancelación de la suscripción. Si debe cancelar la suscripción de un método anónimo, como mínimo, debe almacenar el delegado en una variable para eliminarlo más adelante:

Dim subscription = Sub() '' ... End Sub AddHandler MyClass.MyEvent, subscription '' Later RemoveHandler MyClass.MyEvent, subscription

¿Cómo uso RemoveHandler con métodos anónimos?

Así es como agrego un controlador para el evento MyEvent de la clase MyClass :

AddHandler MyClass.MyEvent, Sub() ''... End Sub

¿Cómo luego uso RemoveHandler para eliminar el controlador del evento MyEvent ?