Row-Farbe ändert sich nicht bei checked Box in Datagrid view

  • VB.NET

    Row-Farbe ändert sich nicht bei checked Box in Datagrid view

    Hallo zusammen,
    Ich habe folgendes Problem:
    Ich habe ein Datagridview welches ich über eine XML - Datei füttere.
    Hier möchte ich das sich die Rowfarbe ändert wenn ich eine Checkbox betätige.
    Ich habe folgenden code :
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Private Sub GridToDo_CellContentClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles GridToDo.CellContentClick
    2. If e.ColumnIndex = 1 Then GridToDo.EndEdit()
    3. ToDoTableBindingSource.ResetCurrentItem()
    4. End Sub
    5. Private Sub GridToDo_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles GridToDo.CellPainting
    6. If e.ColumnIndex < 0 OrElse e.RowIndex < 0 OrElse e.RowIndex >= ToDoTableBindingSource.Count Then Return
    7. Dim rwCurr = DirectCast(DirectCast(ToDoTableBindingSource(e.RowIndex), DataRowView).Row, ToDoSet.ToDoTableRow)
    8. If Not rwCurr.Cleared Then Return
    9. Dim paintPartMask = DataGridViewPaintParts.All Xor DataGridViewPaintParts.Background
    10. e.Graphics.FillRectangle(Brushes.Yellow, e.CellBounds)
    11. e.Paint(e.CellBounds, e.PaintParts And paintPartMask)
    12. e.Handled = True
    13. End Sub


    Der Code bewirkt folgendes:
    Ich kann die Chechbox nicht mehr auf bestätigt umschalten und in meine 1.Spalte (eig. nur der Zähler) wird der text False eingetragen.
    (siehe Bild)
    Was mache ich hier verkehrt?





    Habe jetzt alles soweit hinbekommen.
    Nur eins noch: Ich benötige mehrere Klicks um den Zustand der Checkbox zu ändern, woran kann das liegen?
    Bilder
    • 1.jpg

      12,7 kB, 375×43, 31 mal angesehen

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