In meinem Fall will ich das Screen.OnActiveControlChange abhören und natürlich sichergehen, dass nicht ein anderer Eventempfänger mir das Event "klaut".
Das kann man gerade nochmal so durchgehen lassen.
Wobei, wenn der Programmierer dein Objekt von dem Event abkoppelt, dann ist er selber schuld und hat halt Pech gehabt.
Schutz gegen Fehler ist im Prinzip nichts Schlechtes; ich denke nur, dass der Benutzer deiner Klasse das Event Screen.OnActiveControlChange (also nicht innerhalb deines Codes zuweisen) setzen sollte und so auch die Verantwortung übernimmt, dass das so bleibt.