This always comes up, and once you get used to working around it, it's better how it is currently.
One way to avoid this is to put all variable clicking UI elements in one family with a boolean "canClick" or whatever. Then just change that value as needed, and check for it in your On Click events.
Alternatively, if you're hiding items, just check on their visible status in the On Click events.