Datatable/SQL_Query mit Datagridview vergleichen und übereinstimmungen in Grdview anzeigen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von XBrainBug.

    Datatable/SQL_Query mit Datagridview vergleichen und übereinstimmungen in Grdview anzeigen

    Hallo,
    ich habe ein Datatable an ein Datagridview gebunden und möchte die doppelten Zeilen aus einem SQL Query im Gridview farblich anzeigen lassen (anhand des Primary Key).

    Freund Google hat mir einiges dazu gegeben aber wie meistens nicht das was ich suche....

    Ich habe versucht das SQL_Query in eine Datatable umzuwandeln und das per datatable.merge zusammen zu führen aber ich habe das Gefühl, dass das der falsche Ansatz ist. Weil ich da schon Probleme habe überhaupt die duppelte Zeile zu identifizieren.
    Zweiter Gedanke wäre das SQL_Query in eine Aufzählung umzuwandeln und dann per For Each Schleife nach der Übereinstimmung zu suchen, um dann die Zeile zu markieren.

    Aber irgendwie habe ich das Gefühl, das muss doch noch eleganter gehen als mit For Each. Deshalb die Frage, was gibt es noch oder waren das schon die besten Möglichkeiten?

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Ich stimme dem Erfinder des Rads zu, wenn man es sauber colorieren will ist es mühsehlig. Aber wenn du es einfach schnell einfärben musst, dann hilft dir hoffenlich folgendes.

    VB.NET-Quellcode

    1. Private Sub dgv_CellValidating(sender As Object, e As DataGridViewCellValidatingEventArgs) Handles dgv.CellValidating
    2. If Not String.IsNullOrWhiteSpace(dgv.Rows(e.RowIndex).Cells("Passwort").Value) Then
    3. dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.LightGreen
    4. Else
    5. dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.LightCoral
    6. End If
    7. End Sub


    If-Abfrage musst du natürlich durch deine eigene Prüfung ersetzen.


    Ein Computer wird das tun, was du programmierst - nicht das, was du willst.
    hmm - diese "schnelle Hilfe" führt in die falsche Richtung.
    weil dann musste noch was bauen für wenn das DGV umsortiert wird, und dann noch was für wenn die Daten ühaupt erst geladen werden, und dann noch etwas für wenn Daten codeseitig geändert werden,...

    Lerne lieber gleich das _Cellpainting richtig zu behandeln, dann bleibt dir jede Menge Frickelei erspart.

    "The problem with Quick & Dirty is, that the 'quick' vanishes, while the 'dirty' remains" (Autor vergessen)
    Danke erstmal für die Ratschläge. Im Moment habe ich es erstmal mit der For each Schleife gelöst, da es sich bisher noch um ganze 20 Datensätze handelt. Aber es wird nicht lange dauern bis die Anzahl wächst und es komplizierter wird. Bis dahin habe ich noch Zeit mir was besseres zu überlegen.