Ich gebe Kyoko voll und ganz recht. Du solltest - da du eh schon eingene Controls nach deinen Bedürfnissesn angepasst hast - auf Interfaces und/oder einem gemeinsamen Basistyp setzen von dem alle deine eigenen Controls ableiten. Der Base-Class spendierst du dann die benötigten Properties, Methode, etc. Damit ist dann gewährleistet das alle deine Controls vom gleichen Basistype sind und du kannst einfach nach deiner BaseClass casten
Code:
((MyBaseClass)sender).WhatEver;