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 :

ContextMenuStrip et récupération de l'objet cliqué


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Avatar de Nowwis
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 406
    Par défaut ContextMenuStrip et récupération de l'objet cliqué
    Bonjour à tous !

    Je recherche une solution depuis ce matin pour récupérer un objet depuis une ContextMenuStrip.

    En fait, j'initialise mon menu dynamiquement à l'ouverture de ma form. Pour ça, j'utilise ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    foreach (Categorie laCategorie in bd.GetCategories())
                {
                    ToolStripItem TSMI = new ToolStripMenuItem();
                    TSMI.Text = laCategorie.ToString();
                    déplacerVersToolStripMenuItem.DropDownItems.Add(TSMI);
                    TSMI.Click += new EventHandler(TSMI_Click);
                }

    Au click, j'aimerais que l'objet Categorie soit accessible pour pouvoir retirer l'élement que l'on a cliquer.
    Mais j'ai beaucoup de mal pour récupérer l'objet Categorie, il me retourne uniquement le nom sur lequel j'ai cliqué... J'ai essayé de caster mais aucun effet...

    Si quelqu'un peut m'aider...

    Merci d'avance !

  2. #2
    Invité de passage
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

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

    Informations forums :
    Inscription : Mai 2011
    Messages : 1
    Par défaut
    On peut mettre l'objet dans la propriété Tag comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    foreach (Categorie laCategorie in bd.GetCategories())
    {
        ToolStripItem TSMI = new ToolStripMenuItem();
        TSMI.Text = laCategorie.ToString();
        TSMI.Tag = laCategorie ;
        déplacerVersToolStripMenuItem.DropDownItems.Add(TSMI);
        TSMI.Click += new EventHandler(TSMI_Click);
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    private void TSMI_Click(object sender, EventArgs e)
    {
        ToolStripItem TSMI = sender as ToolStripItem;
        if (TSMI != null)
        {
            Categorie categorie = (Categorie) TSMI.Tag;
     
        }
    }
    Lionel

  3. #3
    Membre très actif
    Avatar de Nowwis
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 406
    Par défaut
    Super !

    Merci beaucoup pour vos réponses.

  4. #4
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Tu peux utiliser la propriété Tag pour associer un objet à ton item de menu.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    foreach (Categorie laCategorie in bd.GetCategories())
    {
        ToolStripItem TSMI = new ToolStripMenuItem();
        TSMI.Text = laCategorie.ToString();
        TSMI.Tag = laCategorie;
        TSMI.Click += new EventHandler(TSMI_Click);
        déplacerVersToolStripMenuItem.DropDownItems.Add(TSMI);
    }
    Après il suffit de reprendre le Tag et de caster en Categorie

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

Discussions similaires

  1. erreur récupération d'un objet ResultSet
    Par shada dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 22/08/2008, 10h07
  2. Réponses: 4
    Dernier message: 29/06/2007, 11h17
  3. DnD : recuperation de l'objet cliqué
    Par crischprolch dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 29/05/2007, 08h27
  4. Récupération d'un objet d'une hashtable
    Par yazman dans le forum C#
    Réponses: 2
    Dernier message: 03/05/2007, 16h13
  5. JTable récupération d'un objet
    Par qwiskas dans le forum Composants
    Réponses: 7
    Dernier message: 31/10/2006, 16h35

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