Ich weiß jetzt nicht, ob ich das alles richtig verstanden habe, aber man kann ja leicht auf öffentliche Objekte einer Klasse prüfen:
Delphi-Quellcode:
var
PList: PPropList;
PropCount: Integer;
NestedObj: TObject;
i: Integer;
begin
PropCount := GetPropList(AObj, PList);
for i := 0 to PropCount - 1 do
begin
if PList[i].PropType^.Kind = tkClass then
begin
NestedObj := GetObjectProp(aInstance, aPropInfo.Name);
if NestedObj is TStrings then
begin
// do something
end;
end;
end;
FreeMem(PList, PropCount * SizeOf(Pointer));
end;
Damit hat man dann die gewünschte Instanz und kann drauf reagieren, oder über
RTTI weiter nach Properties suchen.
Achja, habe den Code nicht ausprobiert, nur mal schnell zusammengeschrieben.
Ich hoffe das hat irgendwie weitergeholfen!
Hans.