Warum nicht gleich ein Property-Editor für eine zu übergebenes Datenobjekt?
Default-Werte mit einer Clear-Methode des Objekts vorab setzen.
Die Property per
RTTI bestimmen, lesen und setzen.
Damit spart man die ganzen zusätzlichen Definitionen und kann jedes Datenobjekt mit einer Clear-Methode bearbeiten.