Hi all,
I need to pass an event as a parameter to a function and I'm wondering if there is any way of doing this.
The reason why I need to do this is because I have a sequence of two lines of code that is littered all over my program, where I dynamically remove the handler to an event, then set the handler again. I'm doing this for several different events and event handlers, so I've decided to write a function that does this.
As an example, let's say I have a combobox in my code called combobox1, and I have the handler called indexChangedHandler. In several places of my code, I have the following two lines:
<br />
RemoveHandler combobox1.SelectedIndexChanged, AddressOf indexChangedHandler<br />
AddHandler combobox1.SelectedIndexChanged, AddressOf indexChangedHandler<br />
Now, I don't want to keep on repeating the above two lines of code (or similar) all over my program, so I'm looking for a way to do this:
<br />
Private Sub setHandler(evt As Event, hndler As eventhandler)<br />
RemoveHandler evt, hndler<br />
AddHandler evt, hndler<br />
End Sub<br />
so that everywhere where those two lines of code(or similar) occur in my program, I can just replace them with:
<br />
setHandler(combobox1.SelectedIndexChanged, AddressOf indexChangedHandler)<br />
So far, the "evt as Event" part of the argument of the setHandler function is giving an error. Any ideas on the right way to do this will be very welcomed. Thanks.