I want to be able to remove an event handler from a component. I tried a couple of things includeing the code below but can't get it to work.
Or maybe it is working but my checking is faulty.
Or maybe it is working but my checking is faulty.
VB.NET:
Private mDelegateSaveBitmap As New System.EventHandler(AddressOf Me.ToolStripMenuItem_General0_DateOfSelected0_Click)
Private Sub RemoveHandlerTest()
RemoveClickHandler(ToolStripMenuItem_General0_DateOfSelected0, "Click", mDelegateSaveBitmap)
End Sub
Public Shared Sub RemoveClickHandler(target As Object, eventName As String, handler As [Delegate])
Dim eventInfo As EventInfo = target.GetType().GetEvent(eventName, BindingFlags.Instance Or BindingFlags.Public)
If eventInfo IsNot Nothing Then
Dim removeMethod As MethodInfo = eventInfo.GetRemoveMethod()
If removeMethod IsNot Nothing Then
removeMethod.Invoke(target, {handler})
Else
Console.WriteLine($"The event '{eventName}' does not have a remove method.")
End If
Else
Console.WriteLine($"The event '{eventName}' was not found.")
End If
End Sub