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

C# Discussion :

l'évènement click sur une ligne de datagrid


Sujet :

C#

  1. #1
    Membre à l'essai
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2011
    Messages : 36
    Points : 20
    Points
    20
    Par défaut l'évènement click sur une ligne de datagrid
    Bonsoir ,

    J'ai un code comportant une requête update sur une base de données affichée à l'aide d'un datagrid sous visual studio !

    Mais je veux l'exécuter après un click d'une ligne de ma datagrid :

    La forme est comme suit :


    si ( une ligne sélectionné (un click)) alors ( modification des données de grid ( à chaque fois je vais prendre les valeurs modifiés et les valeurs non modifiés , mettre à jour ma base , et recharger l'affichage du grid ) )

    sinon ( click sur grid n'est pas effectué) alors afficher un MessageBox ("Sélectionner une ligne où modifier )

    Je suis débutante en C# , aucune idée sur les évènements ! et la forme de mon code peut elle être traitée ( le fait de si (click) { modif } else {Msgbox} )???? si oui , quelqu'un pour m'éclaircir le phénomène !

    Aide svp ! merci d'avance

  2. #2
    Membre expérimenté
    Avatar de jbrasselet
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mars 2006
    Messages
    1 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 022
    Points : 1 413
    Points
    1 413
    Par défaut
    J'ai un peu de mal à comprendre. En effet, comment veux-tu déterminer une absence de clic ?

    De même à quel moment modifies-tu tes données ? Tu n'aurais pas une interface à nous montrer pour que l'on puisse déterminer plus exactement ce que tu veux faire ?
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai.

  3. #3
    Membre à l'essai
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2011
    Messages : 36
    Points : 20
    Points
    20
    Par défaut
    Bonjour , Grand merci pour votre passage

    En fait , c'est ca ce que je voudrais savoir , le fait de comment déterminer une abscence de click ! Comment empêcher un utilisateur à modifier dans la grille si une ligne où modifier n'est pas sélectionnée ?

    En gros , est il possible de manipuler l'évènement de click entouré par une fonction if (click) alors ( modification ) else( le controle n'est pas sélectionné) ( affichage d'un message qui l'oblige à sélectionner une ligne ) ! ??

    Si oui , comment est la forme du code ??

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Je suis pas un expert mais je doute que tu puisse trouvé un moyen de détecté un "non clic".

    Par contre, tu peux generer un evenement sur le clic d'une ligne de ta datagridview.
    L'avantage c'est que tu n'a pas a gérer le fait que rien n'est sélectionné car lorsque ce sera le cas, il se passera rien, tout simplement.

    Au clic donc, tu fait se que tu veux faire....

    Voila, si tu veux plus d'information, je reste disponible

  5. #5
    Membre expérimenté
    Avatar de jbrasselet
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mars 2006
    Messages
    1 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 022
    Points : 1 413
    Points
    1 413
    Par défaut
    Tu es en webform ? winform ? autres ?
    A quoi ressemble ta grille de base ? Tous les champs sont éditables ?

    Une solution pourrait être de mettre des champs non éditable et devoir cliquer sur un bouton pour les rendre éditable et un bouton pour sauvegarder.

    Tu n'as pas un exemple (copie d'écran) de ton interface ?
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai.

  6. #6
    Nouveau membre du Club
    Inscrit en
    Janvier 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 44
    Points : 30
    Points
    30
    Par défaut
    Je travaille avec winforms.Ma datagridview n'est pas liée à une base de données,je la remplis par les textes des boutons sur lesquels j'ai cliqué.J'espère que j'ai répondu à ta question

  7. #7
    Membre expérimenté
    Avatar de jbrasselet
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mars 2006
    Messages
    1 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 022
    Points : 1 413
    Points
    1 413
    Par défaut
    lorie=ayouta.gfs ?
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai.

  8. #8
    Membre à l'essai
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2011
    Messages : 36
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par jbrasselet Voir le message
    lorie=ayouta.gfs ?

    Non , chui là

    alors je travaille en winforms !

    Ma datagrid est sous Janus winforms Controls

    Je veux tout simplement garantir la sélection d'une ligne où modifier pas plus c_à_d quand une ligne de controle (ma datagrid) est n'est pas sélectionné , on autorise pas la modification d'un employé !

    Voilà mon interface ci - joint ! Tous les champs sont éditables pour le moment

  9. #9
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2009
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2009
    Messages : 317
    Points : 560
    Points
    560
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     private void buttonModifier_Click(object sender, EventArgs e)
    {
           if (dataGridView1.SelectedRows.Count > 0)
           {
                 //Modification 
           }
            else
                MessageBox.Show("Veuillez sélectionner l'employé à modifier.", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
    }

  10. #10
    Membre à l'essai
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2011
    Messages : 36
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par Aeronia Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     private void buttonModifier_Click(object sender, EventArgs e)
    {
           if (dataGridView1.SelectedRows.Count > 0)
           {
                 //Modification 
           }
            else
                MessageBox.Show("Veuillez sélectionner l'employé à modifier.", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
    }
    Je veux déclencher l'événement lors du click sur la grid pas sur le bouton modifier , si vous jetez un oeil sur mon interface , le click sur le bouton modifier se fait déja après l'introduction des nouveux champs , donc après la sélection d'une ligne où modifier !

  11. #11
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2009
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2009
    Messages : 317
    Points : 560
    Points
    560
    Par défaut
    Je dois reconnaitre que j'ai du mal à comprendre ce que tu souhaites faire..

    Si tu souhaites vérifier qu'au changement de sélection de ta datagridview qu'au moins une row est sélectionnée et que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dataGridView1.SelectionMode= DataGridViewSelectionMode.FullRowSelect;
    Alors tu peux faire comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    private void dataGridViewActivites_SelectionChanged(object sender, EventArgs e)
    {
         if (dataGridViewActivites.SelectedRows.Count>0)
         {
               //Modification
          }
          else
               MessageBox.Show("Veuillez sélectionner l'employé à modifier.", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
    }
    Si c'est pas encore ce que tu veux, essaye d'expliquer autrement ce que tu souhaites faire, parce que là j'ai vraiment du mal lol

  12. #12
    Membre à l'essai
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2011
    Messages : 36
    Points : 20
    Points
    20
    Par défaut
    Et bien j'ai entammé une autre solution qui m'a suffit , mais pour la gestion des évènements je voudrais bien avoir un tutroiel qui m'explique de plus svp

    Ma solution était comme suit :
    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
     
    int i = -1;
                        try
                        {
                        string k = this.gridEXEmp.CurrentColumn.Index.ToString();
                        i = Convert.ToInt16(k); 
                        }
                        catch
                        {
                        MessageBox.Show("Vous devez sélectionner une ligne où modifier", "STOP" , MessageBoxIcon.Warning);
                        }
     
                      if(i>=0)
                      { 
                      // Modification 
                       }

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/07/2009, 22h18
  2. Evenement double click sur une ligne d'un DataGrid
    Par imad_eddine dans le forum ASP.NET
    Réponses: 7
    Dernier message: 19/11/2007, 17h24
  3. click sur une ligne d'un datagrid
    Par seckinfo dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 06/02/2007, 10h42
  4. [VB.NET]Cliquer sur une ligne du datagrid
    Par Dnx dans le forum ASP.NET
    Réponses: 1
    Dernier message: 02/11/2005, 14h26
  5. Réponses: 13
    Dernier message: 12/07/2005, 10h14

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