PDA

Vollständige Version anzeigen : Spalte mit berechneten Ergebnis


myrix
12.12.2007, 08:32
Hi,

ich hab ein Datagridview mit einer Tabelle von einem SQL-SERVER.

Obst | TextLänge
Apfel | 5
Birne | 5
Banane | 6

die Spalte Textlänge hab ich über den SQL-Server berechnen lassen mit:

SELECT Obst, {fn Length(Obst) } as Textlänge FROM Tab1

Jetzt stehe ich aber vor einem Rätsel. Ich lasse dem User die Möglichkeit die Daten in Datagridview direkt bearbeiten. Im Ereignis "CurrentCellChanged" hab ich den Code dafür:

Dim dsChanges As DataSet = DS.GetChanges()
If Not dsChanges Is Nothing Then

ADP.Update(dsChanges)
DS.AcceptChanges()
End If

ADP ist ein Tableadapter, DS ein DATASET

Wenn jetzt in der Spalte Obst ein Wert verändert wird, wird das auch an die Datenbank gesendet. Aber die Spalte Length aktualisiert sich nicht.

Wie kann ich eine Row direkt nachladen? oder wie kann ich einer ungebundenen Spalte die berechnung der Textlänge einer anderen Spalte übergeben?

Mellex
18.12.2007, 16:32
Wenn ich das richtig verstehe ist die Länge nicht in der SQL Datenbank gespeichert, da sie über das SELECT berechnet wird. Im Datagrid ist das dann eine "normale" Spalte. Somit ist es nur ein Wert im DataGrid. Diesen mußt Du dann manuell neu ermitteln und manuell in die Zelle schreiben.

Gruss Mellex