Testez la démo, et ensuite, appropriez-vous le code!
L'essentiel réside dans les 2 classes (ExtendedControls et ExtendedControl).
Pour les réutiliser, n'utilisez pas le copier/coller, cela ne suffit pas. Exportez les modules de classes (*.cls) et le module standard (*.bas), et ré-importez-les dans votre projet.
N'hésitez pas à les faire évoluer ! Par fainéantise, je n'ai traité que 2 types (TextBox et Label), mais on peut en ajouter de nombreux autres assez facilement. De plus, je n'ai implémenté que quelques évènements (2 pour être honnête), mais ce qui marche pour 2, marche pour tous les autres (sauf les évènements de l'objet générique de type Control).