Hallo zusammen,
danke erstmal für Eure Antworten. Ich habe den Fehler gefunden. Diese zwei folgenden Zeilen haben in den Set-Proceduren von TAnsprechpartnerListe gefehlt :
Delphi-Quellcode:
if (Assigned(FOnChange)) and (FModifyAction = lnChange) then
FOnChange(Self, Self);
Damit funktioniert jetzt alles so wie es soll. Eine vollständige Set-Procedure von TAnsprechpartnerListe sieht dann jetzt so aus :
Delphi-Quellcode:
procedure TAnsprechpartnerListe.SetMobil(Value: string);
begin
FMobil := Value;
if (Assigned(FOnChange)) and (FModifyAction = lnChange) then
FOnChange(Self, Self);
end;
Wenn ich jetzt im Programm auf eine Änderung in einem Eingabefeld reagieren sieht das ganze so aus :
Delphi-Quellcode:
with TAnsprechpartnerListe(AnsprechpartnerListe.Items[AdvLV_CustomerContacts.Selected.Index]) do
begin
ModifyAction := lnChange;
KundenNr := TKundenListe(KundenListe.Items[MainForm.AdvLV_OverviewList.Selected.Index]).KundenNr;
Vorname := CustomerContact.AdvEdt_CustomerContactsVorname.Text;
Nachname := CustomerContact.AdvEdt_CustomerContactsNachname.Text;
Telefon1 := CustomerContact.AdvEdt_CustomerContactsTelefon1.Text;
Telefon2 := CustomerContact.AdvEdt_CustomerContactsTelefon2.Text;
Fax := CustomerContact.AdvEdt_CustomerContactsFax.Text;
Mobil := CustomerContact.AdvEdt_CustomerContactsMobil.Text;
EMail := CustomerContact.AdvEdt_CustomerContactsEMail.Text;
ModifyAction := lnNone;
end;
Damit werden dann alle Änderungen in die Datenbank geschrieben.
Edit: Rechtschreibfehler korrigiert.