Recherche en datagrid

abdouinfomiage Messages postés 80 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 3 février 2008 - 30 juil. 2005 à 20:18
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 - 30 juil. 2005 à 23:55
salut, j ai un pb au niveau de la recherche dans un data grid.
je veux que l'utilisateur saisie un code dans un inputbox par exemple,et a partir de ce code on veux faire une recherche si ce code existe alors le curseur de mon data grid va se deplacer vers la ligne ou le 'row' ou se trouve
le code et lui attribue une couleur différente merci d'avance.

2 réponses

cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
30 juil. 2005 à 23:51
voila



Private Sub BtnRecherche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnRecherche.Click

'///<summary>

'Qd l'utilisateur va cliquer nous allons faire une recherche dans le datagrid

'///</summary>

Try



Me.Cursor = Cursors.WaitCursor 'sablier



Dim
blnTrouve As Boolean = False 'boolean permettant de
savoir si l'on a trouve une ligne, si il est a false on affiche un
avertissement



If
CbRecherche.SelectedIndex > -1 Then 'l'utilisateur a
selectionné un critere de recherche




Dim i As Integer = 0 'compteur de boucle




For i = 0 To CInt(dgLstClient.Tag) - 1 'on balaie le datagrid




Dim Ligne As String = dgLstClient.Item(i, CbRecherche.SelectedIndex)




If Ligne.StartsWith(TbRecherche.Text) Then 'on cherche une
correspondance entre le tbrecherche et la ligne du datagrid


dgLstClient.Select(i) 'on selectionne la ligne trouve


blnTrouve = True 'le boolean passe a vrai car nous avons trouve la
recherche


Me.Cursor = Cursors.Default 'fleche


Exit Sub 'comme on a trouve la ligne recherche on sort

End If



Next




If Not blnTrouve Then 'le blntrouve est a faux
cad que l'on a rien trouve


MsgBox("Aucune concordance", MsgBoxStyle.Information, "Recherche")


TbRecherche.Clear()

End If




Else 'l'utilisateur n'a pas choisi de critere de
recherche


MsgBox("Veuillez choisir un critére de recherche",
MsgBoxStyle.Information, "Selection du critére de recherche")

End If



Me.Cursor = Cursors.Default 'fleche



Catch ex As Exception

Me.Cursor = Cursors.Default 'fleche

MsgBox(ex.Message & " " & ex.Source)

End Try



End Sub



par contre ta ligne sera selectionné mais le curseur ne descend pas a
la ligne selectionnée. Je n'ai pas trouve de soluce pour ce si tu la
trouve donne moi la stp



merci

http://www.correzeweb.com
http://www.localetv.com
[ol%28%27http://spaces.msn.com/members/devlog81/%27%29; http://]
0
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
30 juil. 2005 à 23:55
CInt(dgLstClient.Tag) contient le nombre de ligne max du datagrid, tu peux le remplacer par:

Dim lcm As CurrencyManager = Me.BindingContext(DataGrid1.DataSource, DataGrid1.DataMember)

Dim ldv As DataView = CType(lcm.List, DataView)

MsgBox(ldv.Count)


http://www.correzeweb.com
http://www.localetv.com
[ol%28%27http://spaces.msn.com/members/devlog81/%27%29; http://]
0