Hallo Forum,
seit längerem sitzte ich an folgendem Problem:
Wie bekomme ich den aktuell eingegeben Zellenwert einer Datatable ?
Folgende Ausgangssituation:
Ich benutze mehrer Datatables als Benutzereingabemasken, soll heißen, der Benutzer muss in dem Tabellenraster
Daten eingeben. Diese eingaben sollen dann für weitere Berechnungen verwendet werden. Ich arbeite mit vb.net 10 und
xaml. Es gibt also bei mir eine DataTable, dann eine DataView und ein Datagrid (das wird in xaml definiert).
Zum Testen habe ich 3 Zeilen definiert, die beim Starten der Appl. schon Daten enthalten. Nach dem Starten, sehe ich dann eben meine 3 Zeilen, und eine leere Eingabezeile (ist wahrscheinlich das Standardverhalten der DataTable).
So nun aber:
* Die Zellenwerte der 3 Zeilen kann ich auslesen (z.b mittels einer Schleife)
* Wenn ich nun etwas in diese leere Zeile eingebe, erhalte ich keine Werte !!!???
* Auch die Anzahl der Rows stimmt nicht. Nach dem Start ist der Rowcount der Table bei 3 !! Sollte
aber doch bei 4 sein, oder (3 + die leere Reihe)
* Es gibt ja bei der Table die BeginnEdit, EndEdit, AcceptChanges usw, RowState, RowVersions usw.
Aber wo und wie muss ich das einbauen?
Habe z.B. im OnColumnChanged Event probiert die AcceptChanges Methode aufzurufen, erhalte aber die Meldung,
"Diese Operation kann nicht an einer Zeile durchgeführt werden, die sich nicht in der Tabelle befindet."
* Es sollte im Prinzip so sein, dass wenn der Benutzer Daten eingibt und dann eben z.B. die Enter, Tab,
Pfeiltasten benutz, eine Berechnung mit den aktuell sichtbaren Zellwerten startet.
Ich bin jetzt sehr ratlos, und brauche Eure Hilfe.
Falls notwendig kann ich auch etwas Code senden.
Danke schon mal im Voraus.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP