| Forum: VB.NET |
Thema:
Re: Änderungen in einem DataGrid |
Von:
G. Guest (
27.11.2003 12:15) |
Hi Till,
Super.....
Jetzt klappt es ..
Ich stell mich vielleicht etwas dumm an, aber das sind die ersten Gehversuche mit .Net. Ich steige gerade von VB6 auf .Net um.
Und so hab ich es gemacht:
Private Sub DataGridRiddle_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridRiddle.CurrentCellChanged
Dim daTable As New Data.DataTable
Try
daTable = dsRiddle.Tables(0).GetChanges
If Not daTable Is Nothing Then
Dim ConnObj As New OleDb.OleDbConnection(PstrConnString)
Try
ConnObj.Open()
Catch ex As Exception
ConnObj.Dispose()
MsgBox("Kein Datenbankzugriff möglich !", MsgBoxStyle.Critical, "Speichern")
Exit Sub
End Try
Dim strUpdCom As String = "UPDATE Siebe SET Siebbezeichnung = 'Siebx' , Maschenweite = 1.2 WHERE IDSieb = 35"
Dim NewRow As Integer
NewRow = (New OleDb.OleDbCommand(strUpdCom, ConnObj)).ExecuteNonQuery
If NewRow = Nothing Then
ConnObj.Close()
ConnObj.Dispose()
MsgBox("Änderung Fehlgeschlagen !", MsgBoxStyle.Critical, "Speichern")
Exit Sub
End If
ConnObj.Close()
ConnObj.Dispose()
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Gibt es noch wichtige Änderungen, die ich vornehmen sollte, die ich nicht berücksichtigt hab.
Den festen Updatesting will ich ja noch ändern.
Ich versuche die Zelle auszulesen, in welcher die Änderung erfolgte.
Dim MyGrid As DataGrid = CType(sender, DataGrid)
Dim x As String
x = CStr(MyGrid.Item(MyGrid.CurrentCell))
hiermit bekomme ich nur die Zelle, ich welche ich gehe. Nicht die ich tatsächlich geändert habe.
Gibt es ein Event LostFocus bezogen auf die Zelle?
Das Leave-Event bezieht sich ja nur auf das Verlassen des gesamten Grids.
| Betreff |
Von |
Datum |
|
|
  |
Re: Änderungen in einem DataGrid
| Hi Bernd,<br><br>einen Verbesserungsvorschlag habe ich:<br>benutze den Finally-Block, anstatt ein paar mal ConnObj.Close()<br>ConnObj.Dispose()<br><br>Die Vorgängerzelle must du dir von Hand merken. Eine globale... |
 |
 |
 |
|
|
Till
Groos
|
27.11.2003 12:25 |
|
|
  |
Re: Änderungen in einem DataGrid
| Ja das mit lastCell ist mir schon klar, aber bei welchem Event kann ich denn die Zelle Bestimmen?<br>Ich denke vor dem Verlassen dieser. Aber wie heißt das Event dazu. |
 |
 |
 |
|
|
G.
Guest
|
27.11.2003 12:35 |
|
|
  |
Re: Änderungen in einem DataGrid
| Hi Bernd,<br>Im CellChanged-Event. Du merkst dir mit der lastCell-Variable die Vorgängerzelle (anfangs 0/0). Dann kannst du immer als letzt Anweisung im Cellchanged-Event lastCell die... |
 |
 |
 |
|
|
Till
Groos
|
27.11.2003 12:47 |
|
|
  |
Re: Änderungen in einem DataGrid
| Hallo Till,<br>so das Problem ist gelöst.<br>:-)<br>Hätte ich ohne deine Hilfe wohl nicht geschaft.<br>Nochmal Danke.<br><br>Jetzt steht nur noch die Sache mit den Spaltenbreiten und Spalten ausblenden auf dem... |
 |
 |
 |
|
|
G.
Guest
|
27.11.2003 14:49 |
|
|
|
|
Till
Groos
|
27.11.2003 15:30 |
|
|
|
|
G.
Guest
|
27.11.2003 15:54 |
|
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!