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 :

problème avec datagridview [Débutant]


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Femme Profil pro
    Enseignant
    Inscrit en
    Avril 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2007
    Messages : 130
    Par défaut problème avec datagridview
    bonjour
    je suis débutante je souhaite savoir comment affecter un caractère à la cellule cliqué dans une datagridview?

    merci pour votre aide

  2. #2
    Membre éprouvé
    Avatar de khany
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 073
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 073
    Par défaut
    Si j'ai bien compris ta question voici un exemple :

    J'ai donc pris un objet datagridview, un bouton pour remplir celui-ci et lorsque l'on clique dans une cellule celui-ci demande une valeur a remplacer et enfin il remplir la cellule sélectionnée par la nouvelle valeur.

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    '--Remplir le data grid view pour le test
    For ae As Integer = 0 To 100
    DataGridView1.Rows.Add()
    For az As Integer = 0 To 4

    DataGridView1(az, DataGridView1.Rows.Count - 2).Value = "Valeur Lig : " & ae.ToString & " Col : " & az.ToString

    Next
    Next
    End Sub

    Private Sub DataGridView1_CellContentClick(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick

    '--- Afficher la colonne et la ligne sélectionnée par l'utilisateur
    MsgBox("col click : " & DataGridView1.CurrentCellAddress.X.ToString & _
    "Ligne click : " & DataGridView1.CurrentCellAddress.Y.ToString)
    '--- Changer la valeur par l'intruction IMPUTBOX
    DataGridView1(DataGridView1.CurrentCellAddress.X, DataGridView1.CurrentCellAddress.Y).Value = InputBox("Nouvelle valeur")

    End Sub


    Le tutoriel de Philippe (Lasserre) explique en détail ta demande

  3. #3
    Membre confirmé
    Femme Profil pro
    Enseignant
    Inscrit en
    Avril 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2007
    Messages : 130
    Par défaut
    merci pour votre réponse
    cela fonctionne lorsque la cellule contient déjà une valeur.
    en fait j'ai une datagridview et je souhaite lorsque je clique sur une cellule vide, une étoile sera affectée à cette cellule pour la marquer

  4. #4
    Membre expérimenté
    Avatar de Sadar
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2005
    Messages : 49
    Par défaut
    Doit-on pouvoir modifier directement dans la cellule ou pas ?

  5. #5
    Membre confirmé
    Femme Profil pro
    Enseignant
    Inscrit en
    Avril 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2007
    Messages : 130
    Par défaut
    non, un simple clic affecte une étoile à la cellule cliquée

  6. #6
    Membre expérimenté
    Avatar de Sadar
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2005
    Messages : 49
    Par défaut
    Essaye :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub DataGridView1_CellClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
     
            '--- Teste si la cellule est vide ou NULL
            If IsDBNull(DataGridView1(DataGridView1.CurrentCellAddress.X, DataGridView1.CurrentCellAddress.Y)) Or _
              DataGridView1(DataGridView1.CurrentCellAddress.X, DataGridView1.CurrentCellAddress.Y).Value = "" Then
                '--- Ok on inscrit une valeur
                DataGridView1(e.ColumnIndex, e.RowIndex).Value = "*"
     
            End If
     
        End Sub

  7. #7
    Membre confirmé
    Femme Profil pro
    Enseignant
    Inscrit en
    Avril 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2007
    Messages : 130
    Par défaut
    j'ai essayé le code rien ne se passe

  8. #8
    Membre expérimenté
    Avatar de Sadar
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2005
    Messages : 49
    Par défaut
    Je viens a nouveau de le tester, le code fonctionne, essaye-le dans un nouveau projet, ou alors il me faut plus de renseignements pour savoir le hic.

    Je clique :

    si la zone est vide il inscrit directement l'étoile dans la cellule sélectionnée et si il y a une valeur il propose de changer.

    es-tu dans le bon évènement ?

    DataGridView1_CellClick

  9. #9
    Membre confirmé
    Femme Profil pro
    Enseignant
    Inscrit en
    Avril 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2007
    Messages : 130
    Par défaut
    merci infiniment
    effectivement je n'utilisais pas le bon evenement

  10. #10
    Membre confirmé
    Femme Profil pro
    Enseignant
    Inscrit en
    Avril 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2007
    Messages : 130
    Par défaut
    le problème n'a pas été complètement résolu
    en fait, dans la même forme, je crée dynamiquement plusieurs datagridview et à chaque fois j'utilise addhandler pour ajouter l'évenement cellclick à la datagridview.
    Ensuite, j'utilise la fonction affichEtoile

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     Private Sub AffichEtoile(ByVal sender As Object, ByVal e As System.EventArgs)
     
            'Ici sender = à l'objet qui à caller la procédure... fais le code que tu souhaites !
            If IsDBNull(dtg(dtg.CurrentCellAddress.X, dtg.CurrentCellAddress.Y)) Or _
               dtg(dtg.CurrentCellAddress.X, dtg.CurrentCellAddress.Y).Value = "" Then
                '--- Ok on inscrit une valeur
                dtg(e.ColumnIndex, e.RowIndex).Value = "*"
     
            End If
        End Sub
    ce code ne fonctionne plus pour une datagridview crée dynamiquement
    il m'affiche l'erreur suivante:
    'ColumnIndex' is not a member of 'System.EventArgs'.
    QUe dois je faire?

  11. #11
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2011
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 453
    Par défaut
    C'est parce que la signature de ton évènement n'est pas la bonne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private Sub taDGV_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) _
                                        Handles taDGV.CellClick

  12. #12
    Membre confirmé
    Femme Profil pro
    Enseignant
    Inscrit en
    Avril 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2007
    Messages : 130
    Par défaut
    merci

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

Discussions similaires

  1. probléme avec datagridview
    Par mounim_taoufik dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/12/2009, 16h11
  2. Réponses: 2
    Dernier message: 01/04/2009, 10h35
  3. Problème avec datagridview et dataset
    Par CenToRy dans le forum VB.NET
    Réponses: 1
    Dernier message: 20/11/2008, 18h56
  4. Problème avec DataGridView
    Par andy38 dans le forum VB.NET
    Réponses: 10
    Dernier message: 24/01/2008, 02h14
  5. Problème avec DataGridView et Localizable
    Par blistex dans le forum ASP.NET
    Réponses: 3
    Dernier message: 10/07/2007, 16h28

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