VB.Net Récupérer l'info d'une ligne sélectionner dans un DataGridView

Signaler
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
-
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
-
Bonjour à tous

Je cherche un moyen de récupérer l'info d'une cellule d'une ligne sélectionnée dans un DataGridView.

 DataGridView..SelectedRows.???????.Cells(7).Value()




Merci d'avance

4 réponses

Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
16
salut,

DataGridView..SelectedRows(0).Cells(7).Value()


l'id 0 te renvoi la 1ère ligne sélectionnée

Chris...
- La vérité n'est pas ailleurs, elle est sous le nez de chacun, quelques mouvements neuronale permettent de l'entrevoir -
MCPD (webform-winform) / MCSA / MCDST / MCT
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
Salut merci beaucoup...
Mais j'arrive à un problème...

Dans mon datagridview, j'ai 8 colonnes et l'info que je veux récupérer se retrouve dans la dernière colonnes (donc Cells = 7)

Voici le code que j'ai dans ma procédure de mon bouton...

If PlusieursLignes = False Then
   Dim intCle As Integer
   intCle = DataGridView.SelectedRows(0).Cells(7).Value() 
End If


J'ai juste cela et ca me donne l'erreur:
L'index était hors limites. Il ne doit pas être négatif et doit être inférieur à la taille de la collection.
Nom du paramètre : index


Mon bug peut-il venir d'ailleur??

Je déamrre mon prog... Je sélectionne une ligne de mon datagridview et je clique sur mon bouton et hop... l'erreur...


Merci de ton aide c'est très apprécié
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
16
Salut, j'ai pu reproduire ton problème, regarde mon code ci-dessous :

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim dt As New DataTable()
        dt.Columns.Add(New DataColumn("A"))
        dt.Columns.Add(New DataColumn("B"))
        dt.Columns.Add(New DataColumn("C"))
        dt.Columns.Add(New DataColumn("D"))
        dt.Columns.Add(New DataColumn("E"))
        dt.Columns.Add(New DataColumn("F"))
        dt.Columns.Add(New DataColumn("G"))
        dt.Columns.Add(New DataColumn("H"))

        dt.Rows.Add(dt.NewRow())
        dt.Rows.Add(dt.NewRow())
        dt.Rows.Add(dt.NewRow())
        dt.Rows.Add(dt.NewRow())

        DGView.AutoGenerateColumns = False
        DGView.SelectionMode = DataGridViewSelectionMode.FullRowSelect
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim a As Object = DGView.SelectedRows(0).Cells(7).Value
    End Sub



J'ai obtenu la même erreur en ne paramètrant pas le SelectionMde à FullRowSelect

Chris...
- La vérité n'est pas ailleurs, elle est sous le nez de chacun, quelques mouvements neuronale permettent de l'entrevoir -
MCPD (webform-winform) / MCSA / MCDST / MCT
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
Rebonjour..

Le fait d'ajouter
DGView.SelectionMode = DataGridViewSelectionMode.FullRowSelect
dans le load fait effectivement fonctionner la sélection de la ligne mais le résultat est comme si la ligne sélectionné était la ligne 1

Dans les fait, j'ai besoin de récupérer la clé primaire de mon fichier Acces qui est afficher dans mon datagridview.
Je sélectionne une ligne qui a dans la colonne #8 (la colonne Cle) une valuer de 180 et j'arrive à une valeur de 1. IntCle vaut 1.

De plus, si l'utilisateur veut sélectionner plus d'une colonne le code ne fonctionne plus.

Idée et si tu as le temps....
aimerais-tu avoir mon code pour voir ce que je veux dire....



Merci d'avance