Eigentlich kein größeres Problem, wenn man sich anschaut, wie Formulare in Delphi behandelt werden.
Es gibt das
DFM, in dem die Formulare als Text beschrieben werden.
Im Prinzip speicherst Du also nur alle Attribute ab, die nicht dem Standardwert entsprechen, wenn Du ein normales Formular erzeugst. Genauso gehst Du mit allen Controls vor.
Somit brauchst Du also im Prinzip nur ein abgeleitetes Formular, das 2 zusätzliche Methoden hat: Einmal aus einer Beschreibungsdatei (z.B.
XML, so kannst Du die als Blob sogar in der Datenbank ablegen) das Formular und alle Controls erzeugen. Zum anderen eine, die das Formular und alle darauf existierenden Controls in ein
XML packt.