Die Einträge der internen datalinklist der datasource sind erreichbar über einen kleinen Umweg:
Code: Alles auswählen
type tpublicdatasource = class(tdatasource)
public property DataLinks;
end;
procedure test(ds : tdatasource);
var dtlinklist : tdatalinks;
dtlink : tdatalink;
begin dtlinklist := tpublicdatasource(ds).DataLinks;// Hack !!
For i := 0 to dtlinklist.count-1 do
begin dtlink := tdatalink(dtlinklist[i]);
-----dtlink-auswerten ....
end;
end;
1.tfielddatalink Einträge habe die wunderbare Eigenschaft CONTROL --> also perfekt geeignet
2.tcomponentdatalink Einträge haben nix dergleichen (leider werden die für DBGrid (für die columns) genutzt)
property visual hilft nicht wirklich
property fields bringt nichts, da diese nur auf das Dataset verweisen
----------------------------------------------------------------
1. gibt es eine Möglichkeit, direkt von dataset-datasource ausgehend die angeschlossenen componenten zu ermitteln ?
2.Ein (haarsträubender ?) Weg wäre es, die Notification-List der Datasource auszuwerten
(aber das kann doch nicht sinnvoll sein!...es sei denn, irgendjemand hält das für einen Standard und sagt wie)
3....oder muss man andersherum alle componenten der Application
auf die Eigenschaft datasource und deren Inhalt untersuchen und filtern ?