Op donderdag 27-11-2008 om 22:37 uur [tijdzone +0100], schreef Michael Van Canneyt: > > On Thu, 27 Nov 2008, Joost van der Sluis wrote: > > > Hi all, > > > > When a dataset is read-only, the db-aware controls allow editing. The > > changes aren't send to the dataset, though. Which is very confusing for > > the user. > > > > I don't know how to fix it. I can change TDatalink.ReadOnly so that is > > checks if the dataset is ReadOnly. But, for exmple, TDBEdit.Readonly > > directly passes the result of TDatalink.Readonly. And I checked with > > Delphi and there TDBEdit.Readonly is false, even if the TDataset is > > readonly. > > That is because the readonly is the TCustomEdit.ReadOnly, no ? > > You can set a edit read-only, even if the field is read-write, so > this is normal in my eyes.
But also the other way: set a field or an TCustomEdit to read/write, if the dataset is read-only? (atm , this is possible, and I did check with Delphi, there you can do this also) > But if the TDataset is readonly then the edit should of course also > give readonly=True. Well, it doesn't. The same holds for Delphi. But in Delphi TEdit.Readonly is false, but you can't change it's data. > > Alternative is to check in TDBEdit.IsReadOnly and relatives... > > ? Please explain ? That's a private function which is used internally. We could check here if the TDataset is readonly... Just look up the code, it's pretty straight-forward. Joost. _______________________________________________ Lazarus mailing list Lazarus@lazarus.freepascal.org http://www.lazarus.freepascal.org/mailman/listinfo/lazarus