Se positionner sur une ligne précise dans un datagridview

Résolu
Sympa74
Messages postés
85
Date d'inscription
lundi 25 septembre 2006
Statut
Membre
Dernière intervention
18 décembre 2008
- 21 nov. 2006 à 22:28
Sympa74
Messages postés
85
Date d'inscription
lundi 25 septembre 2006
Statut
Membre
Dernière intervention
18 décembre 2008
- 26 nov. 2006 à 11:09
Bonsoir,

Voici mon problème.
Je recherche une occurence (le nom du client) dans un datagridview.
Je trouve l'occurence... je mets la ligne en surbrillance... mais je n'arrive pas à faire positionner le focus directement sur cette ligne.

Le problème est que lorsque la ligne trouvée n'est pas visible à l'écran (parce que le datagridview liste quelque 2500 lignes), je n'arrive pas à me positionner directement sur la ligne trouvée... et pourtant elle est trouvée et passé en surbrillance.

Quelqu'un à t'il une petite idée pour moi ? merci d'avance.

Dim I As Integer = 0 'variable de boucle
        Dim Achercher As String = TB_rechercher.Text ' le nom à chercher dans la liste
        ' la boucle recherche si l'occurence est trouvée dans la cellule 3 du datagridview
        ' si l'occurence est trouvée alors la ligne est sélectionnée et s'affiche en surbrillance
        ' la variable numvisucli récupère l'ID du client de manière à ouvrir la fiche détaillée dans un form

        For I = 0 To compteur
            If DataGridView1.Rows(I).Cells(3).Value = Achercher Then _            numvisucli DataGridView1.Rows(I).Cells(0).Value : DataGridView1.Rows(I).Selected True _
           : TB_rechercher.ResetText() : TB_rechercher.Refresh() : Exit Sub
        Next
        TB_rechercher.ResetText() : TB_rechercher.Refresh() : MsgBox("occurence non trouvée")
        TB_rechercher.Focus()

Je vous remercie les pros...

Philippe - Sympa 74
 

2 réponses

vercomax
Messages postés
548
Date d'inscription
mercredi 28 juillet 2004
Statut
Membre
Dernière intervention
11 septembre 2013
2
21 nov. 2006 à 22:38
je ne vois pas le endif, c ptet çà non ? car tu as plusieures instruction derrière le then.
1
Sympa74
Messages postés
85
Date d'inscription
lundi 25 septembre 2006
Statut
Membre
Dernière intervention
18 décembre 2008

26 nov. 2006 à 11:09
Bonjour.. j'ai trouvé.
En fait la solution à ce problème est qu'il suffit de rajouter au code que j'ai communiqué l'instruction suivante :

DataGridView1.FirstDisplayedScrollingRowIndex = I

Cela peut servir à d'autres, car j'ai déjà vu passer cette même question sur le forum sans jamais de réponse à ce sujet.

Philippe - Sympa 74
 
0