Datagridview änderungen unmittelbar updaten.

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Datagridview änderungen unmittelbar updaten.

    DGV = DataGridView
    DB = Datenbank

    Habe ein Datagridview wo ich eine Checkbox Spalte habe.
    Sobald ich diese anklicke soll er ein update machen, das update bekomme ich hin.
    Also soll ein update der db sein.

    Nur macht er dieses update immer bevor der haken in der checkbox ist, somit also fährt er das update der Daten vor änderung er soll es aber nach änderung machen.

    Reihenfolge der bearbeitung ist zur zeit.
    Mouceclick
    Update
    Haken setzen

    Möchte aber Mouseclick
    Hakensetzen
    Uodate.

    Versuche es zur zeit die ganze zeit mit dem Datagridname(AnzeigeListe) von meinem Datagrid view über alle möglichen sachen wie mouse up, click, endedit, etc nur bei keinem setzt er erst den haken bevor die routine durchlaufen wird. Hat wer ne Idee warum und wie ich es ändern kann?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Icemo“ ()

    Nimm das Event CellEndEdit. mit e.Columnindex und ex.Rowindex kannst du genau abfragen, wo was geändert wurde.

    VB.NET-Quellcode

    1. Dim Spalte As String = dgv.Columns(e.ColumnIndex).Name
    2. Dim ID As String = dgv.Columns(e.ColumnIndex).Rows("ID").Value
    3. Dim Wert As String = dgv.Columns(e.ColumnIndex).Rows(e.RowIndex).Value

    dann eintragen...

    SQL-Abfrage

    1. UPDATE tabelle SET @Spalte = '@Wert' WHERE ID = '@ID'


    Dann wird der Wert geändert, sobald das Bearbeiten der Zelle abgeschlossen ist.
    Also habe es versucht ohne erfolg.

    Bei den events ist die Zelle immer als nicht geändert behandelt.
    um eine änderung zu aktivieren müsste ich die row wechseln bzw den focus umsetzen.

    Gibt es eine möglichkeit es unmittelbar nach dem klick zu speichern/upzudaten?

    habe es mit

    if dgv.iscurrentcelldirty then

    versucht, doch er gibt mir jedesmal den wert false zurück.
    Das heist das das event vor änderung ausgeführt wird. Sobald ich den fokus änder funktioniert es.

    Need help
    Bitte zeigt mir euer können.
    Ich vermeide immer, bei jedem Cell_EndEdit ein Update an die DB zu senden.
    Bei mir gibts immer einen Button "Save", und dann werden alle Änderungen weggeschrieben, die bis dahin vollzogen wurden.
    Weiters natürlich im Form_Closing eine Abfrage "Änderungen speichern?", wenn Änderungen anhängig sind.