Récuperer les données d'un datagridview [Résolu]

marclas 54 Messages postés dimanche 9 septembre 2007Date d'inscription 22 août 2012 Dernière intervention - 5 janv. 2010 à 11:34 - Dernière réponse : marclas 54 Messages postés dimanche 9 septembre 2007Date d'inscription 22 août 2012 Dernière intervention
- 6 janv. 2010 à 17:27
Bonjour,
déjà excellente année a chacun et chacune.
moi je commence pas fort l'année.
voilà mon souci.
je charge un datagridview de données provenant de ma bd, seulement, je voudrais que lors d'un double clic sur une ligne je puisse récupérer les elements de cette ligne et l'afficher ailleur pour effectuer les modification; ou encore lorsqu'une ligne est sélectionner, si on clique sur le bouton modifier les données sont chargées dans une fenetre tiers pour modification.

Merci de m'aider

marclas
Afficher la suite 

Votre réponse

2 réponses

dp_favresa 132 Messages postés vendredi 23 juillet 2004Date d'inscription 11 mai 2010 Dernière intervention - 6 janv. 2010 à 09:58
+3
Utile
Bonjour,

Dans un même cas, je procède de la façon suivante :
- Clic dans le RowHeader (case grise à gauche de la ligne) -> affichage des données en TextBox
- Modification de la bd (update SQL) selon TextBox
- Réaffichage dans le DataGridview

Ci-dessous un petit bout de mon code (VB2005) :
    Private Sub DGVadr_RowHeaderMouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DGVadr.RowHeaderMouseClick

        CBcre.Checked = False           '   Mode création
        CBmod.Checked = True            '   Mode modification

        '   Sélection par le DataGrid de l'enregistrement à modifier
        With ds_adr.Tables("CONTRADR")
            idx_adr = .Rows(DGVadr.CurrentCellAddress.Y).Item("SEQ_NUM")
            TBnom.Text = .Rows(DGVadr.CurrentCellAddress.Y).Item("CT_NAME")
            TBadr.Text = .Rows(DGVadr.CurrentCellAddress.Y).Item("CT_ADD")
            TBnpa.Text = .Rows(DGVadr.CurrentCellAddress.Y).Item("CT_ZC")
            TBloca.Text = .Rows(DGVadr.CurrentCellAddress.Y).Item("CT_TOWN")
            MTBtel.Text = .Rows(DGVadr.CurrentCellAddress.Y).Item("CT_PHONE")
            TBcontact.Text = .Rows(DGVadr.CurrentCellAddress.Y).Item("CT_CONTACT")
        End With

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        vartrav = TBnom.Text
        TBnom.Text = vartrav.Replace("'", "''")
        vartrav = TBadr.Text
        TBadr.Text = vartrav.Replace("'", "''")
        vartrav = TBloca.Text
        TBloca.Text = vartrav.Replace("'", "''")

        '   Création adresse de livraison
        If CBcre.Checked = True Then
            '   Prochain N° d'adresse
            With ds_adr.Tables("CONTRADR")
                Try
                    idx_adr = .Rows(.Rows.Count - 1).Item("SEQ_NUM") + 1
                Catch ex As Exception
                    idx_adr = 1
                End Try
            End With
            strsql = "INSERT INTO CONTRADR (ESRC_FILE, ES_NUM, SEQ_NUM, CT_NAME, CT_ADD, CT_ZC, CT_TOWN, CT_PHONE, "
            strsql = strsql & "CT_FAX, CT_CONTACT, LOC_CODE) VALUES ('" & ds_dossier.Tables("REF_PS").Rows(idx_dossier).Item("ESRC_FILE") & "', '"
            strsql = strsql & ds_chantier.Tables("CONTRACT").Rows(idx_chantier).Item("ES_NUM") & "', '"
            strsql = strsql & idx_adr & "', '" & TBnom.Text & "', '" & TBadr.Text & "', '" & TBnpa.Text & "', '" & TBloca.Text & "', '"
            strsql = strsql & MTBtel.Text & "', '" & ds_vhc.Tables("TRUCKVEH").Rows(idx_vhc).Item("VEHI_CODE") & "', '"
            strsql = strsql & TBcontact.Text & "', '" & ds_situ.Tables("LOCATION").Rows(idx_situ).Item("LOC_CODE") & "') "

            Exec_cmds_sql()
            conn.Close()
            Affichage_adresses()
        End If

        '   Modification adresse de livraison
        If CBmod.Checked = True Then
            strsql "UPDATE CONTRADR SET CT_NAME '" & TBnom.Text & "', CT_ADD = '" & TBadr.Text & "', "
            strsql strsql & "CT_ZC '" & TBnpa.Text & "', CT_TOWN = '" & TBloca.Text & "', CT_PHONE = '" & MTBtel.Text & "', "
            strsql strsql & "CT_FAX '" & ds_vhc.Tables("TRUCKVEH").Rows(idx_vhc).Item("VEHI_CODE") & "', CT_CONTACT = '"
            strsql strsql & TBcontact.Text & "', LOC_CODE '" & ds_situ.Tables("LOCATION").Rows(idx_situ).Item("LOC_CODE") & "' "
            strsql strsql & "WHERE ESRC_FILE '" & ds_dossier.Tables("REF_PS").Rows(idx_dossier).Item("ESRC_FILE") & "' AND "
            strsql strsql & "ES_NUM '" & ds_chantier.Tables("CONTRACT").Rows(idx_chantier).Item("ES_NUM") & "' AND "
            strsql strsql & "SEQ_NUM '" & idx_adr & "' "

            Exec_cmds_sql()
            conn.Close()
            Affichage_adresses()
        End If

        End Sub


Cordiales salutations et bonne prog
dp
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de dp_favresa
marclas 54 Messages postés dimanche 9 septembre 2007Date d'inscription 22 août 2012 Dernière intervention - 6 janv. 2010 à 17:27
0
Utile
Merci dp_favresa
vous m'enlevez une épine


marclas
Commenter la réponse de marclas

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.