Ich glaube nicht, dass sowas geht.
Du könntest aber deinem Objekt eine TList oder TStrings als Eigenschaft geben und damit 'dynamische Eigenschaften' realisieren:
Delphi-Quellcode:
TMyObject = class...
public
Properties: TStrings;
MyObject.Properties.Add('MyProperty=MyValue');
if MyObject.Properties.IndexOfName('MyProperty')<>-1 then
ShowMessage('MyProperty='+MyObject.Properties.Values['MyProperty']);