Hallo peinhard,
vergiss die verkettete Liste - Mehrfachbeziehungen zwischen Komponenten scheinen nicht dein Problem zu sein.
Beim Laden deiner Komponente aus dem
DFM-Stream (Loaded) erkennst du, dass zur Entwurfszeit eine Komponente an die property Table zugewiesen wurde, welche über einen event handler OnNewRecord() verfügt, der gleichfalls zur Entwurfszeit festgelegt wurde. Was machst du, wenn der event handler der externen DataSet-Komponente, auf welche FTable verweist, zur Laufzeit geändert wird - nachdem deine Komponente intern bereits eigenen Code vorgeschaltet hat?
Damit will ich andeuten, dass man eine genauere Beschreibung der Funktionalität deiner Komponente braucht, um vernünftige und praktikable Vorschläge zur Implementierung machen zu können. Die Vorgabe eines surrogate key in deiner Vorschaltroutine ist wohl auch kein gutes Beispiel - diese Funktionalität wäre im eigentlichen event handler des DataSets wohl besser aufgehoben.
Zitat von
Peinhard:
Und für eine verkettete Liste bräuchte man wohl eine Art 'Zentralinstanz', bei der sich sowohl die 'Lauscher' als auch die 'Belauschten' anzumelden hätten und die diese Liste dann eben 'zentral' verwalten könnte/müßte, sehe ich das richtig...?
Wenn du mit einer Zentralinstanz eine zusätzliche aktive Komponente meinst, dann nein. Du kannst die benötigte Observer-Funktionalität ja einfach in den event handler OnNewRecord() des DataSets packen und die Liste der Observer in einer ObjectList verwalten, welche du in DataSet.Tag mitführst.
Freundliche Grüße
marabu