Hallo,
ich habe eine eigene Komponente, die wiederum ein Attribut vom Typ TOwnedCollection beinhaltet.
Wenn die Eigenschaft im Inspector angeklickt wird, wird mein eigener Property-Editor aufgerufen, indem ich die CollectionItems darin editieren, hinzufügen und löschen kann.
Das funktioniert auch alles. Nur wird meine Collection nicht in der
DFM gespeichert. Somit ist die Collection nach einem Neuladen des Projekts natürlich wieder leer.
Ändere ich allerdings zugleich z.B. den Namen der Komponente und speichere das Projekt ab, wird meine Collection richtig in die
DFM geschrieben und kann später auch wieder korrekt geladen werden.
Ich müsste also die
IDE darüber informieren können, dass nun die Eigenschaft geändert wurde und diese in die
DFM gespeichert werden muss.
Hier mein Code:
Aufruf des Editors:
Code:
procedure TMyEditor.Edit;
var lform: TMyForm;
begin
lform := TMyForm.Create(nil);
try
lform.MyData:= TMyData(GetOrdValue);
lform.ShowModal;
finally
FreeAndNil(lform);
end
end {Edit};
In meiner Form TMyForm verändere ich anschließend etwas an der Collection.
Jetzt die Frage, wie schreibe ich dann innerhalb meiner TMyForm in die
DFM zurück?
DefineProperties + TReader + TWriter sind ja dazu nicht nötig oder?
Es wäre nett, wenn mir jemand helfen könnte.
Vielen Dank.
Gruß
mc