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

marclas
Messages postés
54
Date d'inscription
dimanche 9 septembre 2007
Dernière intervention
22 août 2012
- 5 janv. 2010 à 11:34 - Dernière réponse : marclas
Messages postés
54
Date d'inscription
dimanche 9 septembre 2007
Dernière intervention
22 août 2012
- 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

Meilleure réponse
dp_favresa
Messages postés
132
Date d'inscription
vendredi 23 juillet 2004
Dernière intervention
11 mai 2010
- 6 janv. 2010 à 09:58
3
Merci
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

Merci dp_favresa 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 86 internautes ce mois-ci

Commenter la réponse de dp_favresa
marclas
Messages postés
54
Date d'inscription
dimanche 9 septembre 2007
Dernière intervention
22 août 2012
- 6 janv. 2010 à 17:27
0
Merci
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.