Ich versuche alles so zu designen, dass der Fall gar nicht eintritt, d.h. so, dass die Eventhandler auch nur das machen, was eine Folge der Auswahl ist. Und diese direkte Folge benötige ich dann auch, wenn ich den Wert per Quelltext selbst setze.
Ansonsten benutze ich auch private Felder um das zu steuern, da man anders als bei Verwendung von Tag dafür auch am Variablennamen sieht was der tut. Wer Tag dafür benutzt gehört geteert und gefedert.
Das OnClick temporär zu entfernen halte ich auch nicht für sauber, da man dann in dem OnClick gar nichts davon merkt, dass es nicht immer greift und sich später vielleicht mal tot debuggt... das sollte schon auch dort unterschieden werden.