Warum muss ich die Bindungsquellposition ändern, bevor ich Änderungen speichern kann?

8

Ich habe eine kleine Demo WinForms App. Eines der Formulare ist mein Formular Neue Person hinzufügen. Ich habe die Detailansicht anstelle von DataGridView aus meinen Datenquellen verwendet. Wenn ich Daten eintrage und auf die Schaltfläche Speichern im Navigator klicke, gibt es keine Änderungen. Allerdings habe ich MovePrevious und MoveNext nach meinem AddNew in der Form Load eingegeben, alles funktioniert wie erwartet.

%Vor%

Warum muss ich die BindingSource-Position wechseln, bevor Änderungen erkannt und gespeichert werden?

    
Randy 14.12.2015, 15:25
quelle

1 Antwort

3

Sie müssen die Position nicht ändern. Sie müssen BindingSource.EndEdit , das ausstehende Änderungen an der zugrunde liegenden Datenquelle anwendet.

Wenn Sie die Position ändern, werden die zugrunde liegenden Währungsmanager-Aufrufe EndCurrentEdit aufgerufen. Dies ist die Methode EndEdit der Bindungsquelle für Sie.

    
Reza Aghaei 14.12.2015, 15:32
quelle