Das scheint mir doch alles etwas zu aufwändig zu sein.
In einem TEdit (und alles was davon abgeleitet ist), steht in erster Linie ein Text.
Möchte man sich das Leben etwas einfacher machen, dann kann man zusätzliche Properties aufnehmen:
Delphi-Quellcode:
Property Text:String;
property AsFloat:Extended read ... write ...;
property AsInteger:Integer read ... write ...;
Der Anwender der Komponente hat doch fast immer eine genaue Vorstellung was in dem Control drinsteckt (ganzzahl, float, Text) und wählt das passende Property.