IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Recuperation de données d'1 datagridview


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 59
    Par défaut Recuperation de données d'1 datagridview
    salut tout le monde,

    je developpe un projet en vb.net et j'ai un petit souci avec la selection et recuperation de données à partir d'un datagridview .
    Donc , dans une forme j'ai un datagridview et des texbox , initialement mes objets sont vides et quand je click sur un bouton afficher , j'affiche les données de ma BD dans le datagridview , alors mon pb c'est comment aprés avoir selectionner une ligne du datagridview afficher les informations correspendants dans les texbox.

    Merci de m'aider

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 85
    Par défaut
    Slt avec les index des Rows de ton datagrid

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 19
    Par défaut
    Bonjour

    Sauf erreur, qqchose dans ce gout-la :

    textbox1.text = DataGridView1.SelectedRows(0).Cells(i).Value

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 85
    Par défaut
    TextBox1.Text = CType(DataGrid1(1, 1), String)

    tu recupere la ligne 1 de la 1 collone

  5. #5
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 59
    Par défaut
    Slt ,
    Merci CSharpMan,
    TextBox1.Text = CType(DataGrid1(1, 1), String)
    Je ne sais pas pourquoi ça ne marche pas ,j'ai fait :
    id1.Text = CType(Dg(1, 1), String) et ça m'affiche le msg d'erreur suivant :
    Value of type 'System.Windows.Forms.DataGridViewCell' cannot be converted to 'String'.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 85
    Par défaut
    rajoute cette ligne en dessous

    DataGrid1(1, 1) = TextBox1.Text

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 85
    Par défaut
    A mon avis tu dois avoir un datagridview est non un datagrid c'est pour cela que sa ne finctionne pas

  8. #8
    Membre chevronné
    Avatar de m-mas
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2003
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2003
    Messages : 576
    Par défaut
    il faut utiliser l'évenement datagridview_CellClick, ensuite déterminer quel valeur l'utilisateur à cliqué :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    If e.ColumnIndex = -1 OrElse e.RowIndex = -1 Then Exit Sub
    Dim nom_col As String = datagridview.Columns(e.ColumnIndex).Name
     
    Dim monchamp As Integer = CInt(datagridview.Item(nom_col, e.RowIndex).Value)
    monchamptext.Text = monchamp

  9. #9
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 59
    Par défaut
    Salut ,
    Excusez moi je ne me suis pas bien exprimée, voilà en fait il s'agit d'une fonction de recherche que je developpe sous vb.net 2005, je demande le nom et /ou le prenom et j'affiche les personnes correspendants à ma recherche dans un datagridview , mon souci c'est que je veux selectionner une ligne de mon datagridview et avoir les informations dans des texBox. J'ai essayé ce que vous m'avez proposé mais je suis tjr bloquée.

    Voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     Private Sub bt_search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_search.Click
     
     
            Dim NomRecherche As String
            Dim PrenomRecherche As String
            Dim Matable As DataTable
            Matable = DS_cabinet.Tables("_tbPATIENT")
            Dim CountItem As Integer
            Dim dv As New DataView(Me.DS_cabinet.Tables("_tbPATIENT")) 'on met une table dans le dataview
            NomRecherche = InputBox("Veuillez entrer le nom recherché", "Recherche")
            PrenomRecherche = InputBox("Veuillez entrer le prénom recherché", "Recherche")
            If NomRecherche = "" And PrenomRecherche = "" Then
                MsgBox("veuillez entrer un nom et/ou un prenom à recherche SVP")
                'definition de notre table  
            Else
                If NomRecherche = "" Then
                    dv.RowFilter = "prenom like'*" & PrenomRecherche & "*'"
                ElseIf PrenomRecherche = "" Then
                    dv.RowFilter = "nom like'*" & NomRecherche & "*'"
                Else
                    dv.RowFilter = "nom like'*" & NomRecherche & "*' AND prenom like'*" & PrenomRecherche & "*'"
                End If
                CountItem = dv.Count
                dv.Sort = "NOM,PRENOM,AGE "  'on trie  sur le champ Nom en ordre décroissant (ASC pour un tri croissant).
                dv.RowFilter = "nom like'*" & NomRecherche & "*' AND prenom like'*" & PrenomRecherche & "*'"
                Dg.DataSource = dv
            End If
            If CountItem > 0 Then
                id1.Text = dv.Item(0)(0)
                n1.Text = dv.Item(0)(1)
                p1.Text = dv.Item(0)(2)
                s1.Text = dv.Item(0)(3)
                a1.Text = dv.Item(0)(4)
                pr1.Text = dv.Item(0)(5)
                adr1.Text = dv.Item(0)(6)
                tel1.Text = dv.Item(0)(7)
                m1.Text = dv.Item(0)(8)
     
            Else : MsgBox("Inexistant")
            End If
     
        End Sub
    Merci de m'aider

  10. #10
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 59
    Par défaut
    Salut ,
    Merci tt le monde ,
    il faut utiliser l'évenement datagridview_CellClick, ensuite déterminer quel valeur l'utilisateur à cliqué :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    If e.ColumnIndex = -1 OrElse e.RowIndex = -1 Then Exit Sub
    Dim nom_col As String = datagridview.Columns(e.ColumnIndex).Name
    Dim monchamp As string = Cstr(datagridview.Item(nom_col, e.RowIndex).Value)
    monchamptext.Text = monchamp
    Merci Morsi , ça marche juste au niveau du champ selectioné .
    Mon pb c' que je veux selectionner toute une ligne et non seulement un champ ou si je selectionne seulement un champ, recuperer ttes les valeurs de la lignes dans des texBoxs.
    Merci

  11. #11
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 59
    Par défaut
    Salut,
    Enfin voilà la solution à mon pb si ça vs interesse
    'pour selectionner tte la ligne du datagridview
    mondatagridview.SelectionMode = DataGridViewSelectionMode.FullRowSelect
    'pour attribuer chaque colonne à son texbox correspondant
    Dim s As String = mondatagridview.Rows(e.RowIndex).Cells(0).Value
    id.Text = s
    Dim k As String = mondatagridview.Rows(e.RowIndex).Cells(1).Value
    nom.Text = k
    etc...

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] ListBox ou DataGridView pour recuperer les données dans Access ?
    Par Mimosa777 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 24/08/2014, 08h40
  2. Réponses: 3
    Dernier message: 24/07/2007, 16h53
  3. PB de recuperation de données en asynchrone !!
    Par Stopher dans le forum C++
    Réponses: 8
    Dernier message: 01/02/2005, 23h20
  4. Recuperer des données d'access
    Par Lucier dans le forum MFC
    Réponses: 18
    Dernier message: 25/11/2004, 10h29
  5. Réponses: 3
    Dernier message: 22/02/2004, 20h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo