DataGridView: Zeile nach Wert durchsuchen und markieren/selektieren

  • VB.NET

    DataGridView: Zeile nach Wert durchsuchen und markieren/selektieren

    Hallo Leute,

    wieder eine Interessante DataGridView Funktion die ich bräuchte.
    Und zwar habe ich in der ersten Spalte einen ID Wert.
    Ich möchte das DataGridView nun möglichst eleganz nach diesem Wert durchsuchen und diese Zeile dann markieren.

    Kann mir da wer helfen?

    Vielen dank für jegliche Hilfen, Code-Schnipsel und Diskussionen über die eleganteste Lösung.

    Edit: Mein erster Versuch der auch Funktioniert.

    VB.NET-Quellcode

    1. Private Function SucheZeileundMarkiere(ByVal sSuchWert As String) As Integer
    2. Try
    3. For i As Integer = 0 To DataGridView1.Rows.Count - 1
    4. If DataGridView1.Rows(i).Cells(0).Value.ToString = sSuchWert Then
    5. 'Markiert die Zeile
    6. DataGridView1.Rows(i).Selected = True
    7. 'Scrollt zur Angegeben(markierten) Zeile
    8. DataGridView1.FirstDisplayedScrollingRowIndex = i
    9. Exit Function
    10. End If
    11. Next
    12. Catch ex As Exception
    13. ShowError(System.Reflection.MethodBase.GetCurrentMethod().Name, ex.Message)
    14. End Try
    15. End Function


    Nun habe ich aber noch das Problem, das wenn die zu markierende Zeile markiert wurde, das nicht zu dieser gesprungen/gescrollt wird.
    Jemand eine Idee wie ich das löse?

    Edit die 2te.
    Auch das hinscrollen zu der markierten Zeile habe ich nun gelöst.

    VB.NET-Quellcode

    1. DataGridView1.FirstDisplayedScrollingRowIndex = i

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Bibi“ ()