Problem mit DataSet, ComboBox und AddItem

23/12/2007 - 13:57 von a.krick | Report spam
Hallo Community,

ich versuche mir gerade in ADO.NET einzuarbeiten und habe dau ein paar
Frage:

Ich arbeite mit einem SQL Server und einem DataSet.

1. Ich habe eine Maske in der ich die Daten bearbeite u.a. sind dort
auch ComboBoxen hinterlegt deren Daten aus einer Nebentabelle befüllt
wird. Hier gibt es auch einen Button, was diese Nebentabelle zur
Bearbeitung öffnet. Wird so ein DS aus der Nebentabelle bearbeitet und
der Benutzer schließt diese Mask wird die darunter liegende Combobox
nicht aktualisiert. Wie geht das, das die cb akt. wird?

2. Desweiteren habe ich eine Maske die mit dem BindingNavigator
arbeitet. So, wenn ich jetzt enen neuen DS anlege und fülle diesen
nicht aus (Besonders die Pflichtfelder nicht). Ich hab es schon soweit
geschaft das über das RowChanging-Ereignis und mit RowSetColumnError
eine Fehler angezeigt wir, ABER erst nach einem Row-Wechsel.

- Meine Frage ist wie kann ich den Fehler schon vorherprüfen, bzw. den
DS-Wechsel im Navigator abbrechen um dem Benutzer die Möglichkeit
geben die Eingabe zu korrigieren.
- Eine Möglichkeit wàhre auch eine Methode des DataSets was die
Validierung vornimmt und evtl. Fehler/False zurückgibt.
- Das Problem geht auch dann weiter wenn ich mit EndEdit() die Daten
übetragen möchte und es wurde kein Row-Wechsel ausgelöst und es
knallt. Erschwerden kommt hinzu das diese Fehlermeldung in der Main(9-
Methode auflàuft.

Hat jemand ein paar Tipps für mich?

Danke

Gruß

Attila
 

Lesen sie die antworten

#1 Peter Fleischer
27/12/2007 - 07:11 | Warnen spam
schrieb im Newsbeitrag
news:
Hallo Community,

Ich arbeite mit einem SQL Server und einem DataSet.

1. Ich habe eine Maske in der ich die Daten bearbeite u.a. sind dort
auch ComboBoxen hinterlegt deren Daten aus einer Nebentabelle befüllt
wird. Hier gibt es auch einen Button, was diese Nebentabelle zur
Bearbeitung öffnet. Wird so ein DS aus der Nebentabelle bearbeitet und
der Benutzer schließt diese Mask wird die darunter liegende Combobox
nicht aktualisiert. Wie geht das, das die cb akt. wird?



Hi ,
wenn die gleiche DataSource für die Bindung und die Änderungen genutzt wird,
dann werden die Änderungen in der DataSource auch gleich angezeigt.

2. Desweiteren habe ich eine Maske die mit dem BindingNavigator
arbeitet. So, wenn ich jetzt enen neuen DS anlege und fülle diesen
nicht aus (Besonders die Pflichtfelder nicht). Ich hab es schon soweit
geschaft das über das RowChanging-Ereignis und mit RowSetColumnError
eine Fehler angezeigt wir, ABER erst nach einem Row-Wechsel.



EndCurrentEdit hilft da (falls ich es richtig verstanden habe).

- Meine Frage ist wie kann ich den Fehler schon vorherprüfen, bzw. den
DS-Wechsel im Navigator abbrechen um dem Benutzer die Möglichkeit
geben die Eingabe zu korrigieren.



Das geht nicht. Da musst du eine andere technologie nutzen.

- Eine Möglichkeit wàhre auch eine Methode des DataSets was die
Validierung vornimmt und evtl. Fehler/False zurückgibt.



Prüfe doch selbst.

- Das Problem geht auch dann weiter wenn ich mit EndEdit() die Daten
übetragen möchte und es wurde kein Row-Wechsel ausgelöst und es
knallt. Erschwerden kommt hinzu das diese Fehlermeldung in der Main(9-
Methode auflàuft.



Wenn du selbst prüfst, hast du alles in der eigegen hand.

Hat jemand ein paar Tipps für mich?



Überdenke die Technologie. Nutze Standardwerte, mit denen es keine
Constraint-Verletzungen gibt.


Viele Gruesse

Peter

Ähnliche fragen