Ich habe da keinen Handler für ein Post oder Cancel eingebaut - schade sonst wär das die Lösung gewesen
Habe das mal genauer untersucht, indem ich eine kleine Anwendung zusammengeklickt habe mit
- TClientDataset
- TDataSource
- TDBGrid
- TDBMemo
Das Clientdataset habe ich mal stumpf zur Designzeit mit Daten gefüllt. Felder:
- 1 x ftInteger
- 1 x ftMemo
Wenn ich nun, wie in meinem erstem Posting, zur Laufzeit einen neuen Datensatz einfügen will, indem ich zB mit einem DBNavigator auf das Plus klicke, setze ich ja den TClientDataset.State auf "dsInsert". Danach:
- mit Maus in das Memo-Feld im DBGrid klicken
- in das "angeschlossene" DBMemo klicken, weil ich den Text dort reinschreiben will
- und zack: sobald ich in das DBMemo klicke, befindet sich das DBGrid wieder im dsBrowse Modus wo also der neue (bisher leere) Datensatz futsch ist.
Das Problem was ich habe, hängt also nicht mit der darunterliegenden ZEOSlib zusammen. Vielmehr frage ich mich, ob das das Standardverhalten diese
DB-Komponenten sein kann oder ob ich irgendeine Propery noch setzen muß, damit der dsInsert-Modus im DBGrid behalten wird?