Menu contextuel sur l'onglet d'un TabControl [Résolu]

Signaler
Messages postés
4
Date d'inscription
samedi 26 novembre 2011
Statut
Membre
Dernière intervention
29 novembre 2011
-
Whismeril
Messages postés
14424
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
2 avril 2020
-
Bonjour,

J'ai le développement sous C# (avec .Net bien évidemment) pour retourner vers le C++ (MFC) que j'ai pratiqué depuis 1992. J'ai cependant utilisé C# de 2001 à 2006 avant le retour à C++.

Je voudrais avoir un menu contextuel en cliquant avec le bouton droit sur un onglet de mon TabControl...

J'ai donc essayé avec le designer de VS... Je passe bien dans la méthode, je filtre bien le clique droit "if (e.Button == MouseButtons.Right)" mais tous mes efforts ont vains.

J'ai bien lu la doc MSDN mais je n'ai rien compris... ou pas grand'chose.

Dois-je utiliser le contrôle ContextMenuStrip du designer et si oui comment ou faut-il que je le construise à la volée dans ma méthode MouseClick de ma classe ou encore dériver la classe TabControl.

D'avance merci.

Cordialement.

Philippe.

PS : un petit projet d'exemple (du genre exerce de style) serait le bienvenu si ce n'est pas trop abuser.

6 réponses

Messages postés
14424
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
2 avril 2020
365
Bonjour,

dans la fenêtre de design de ton formulaire, tu double-cliques sur le contrôle ContextMenuStrip dans la boite à outils.
Il va se placer dans une zone sous le formulaire.
Tu le sélectionnes et son interface graphique (encore vierge) s'affiche dans le formulaire.
Tu te laisses guider par l'assistant pour créer ton menu.
Ensuite tu sélectionnes le(s) contrôle(s) pour le(s)quel(s) tu veux associer ce menu, dans la fenêtre de propriétés tu cherches ContextMenuStrip, tu cliques sur la petite flèche qui t'invite à ouvrir une liste déroulante et tu choisi ton ContextMenuStrip.

Voilà!

Whismeril
Messages postés
4
Date d'inscription
samedi 26 novembre 2011
Statut
Membre
Dernière intervention
29 novembre 2011

Merci bien pour ta réponse rapide.

Je teste immédiatement.

Philippe
Messages postés
14424
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
2 avril 2020
365
De rien,
pense à indiquer "Accepter" sur le post, si ma réponse te convient.
N'hésite pas à demander un complément si besoin
Whismeril
Messages postés
4
Date d'inscription
samedi 26 novembre 2011
Statut
Membre
Dernière intervention
29 novembre 2011

Voila qui est fait.

Désolé de ne pas pouvoir accentuer tous les caractères, je suis actuellement sur ma tablette Android.

Philippe
Messages postés
4
Date d'inscription
samedi 26 novembre 2011
Statut
Membre
Dernière intervention
29 novembre 2011

J'ai testé et ça marche... sauf que je pense que je devrais filtrer les contrôles concernés... car ça marche dans les onglets ainsi que toute la TabPage... je vais tenter d'en faire mon affaire dans la méthode MouseClick qui va bien.

Merci, jusque là ça m'a bien avancé... la suite au prochain épisode

Encore merci.

Philippe
Messages postés
14424
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
2 avril 2020
365
Bonjour,

dans le contextmenu il y a un événement au moment de l'ouverture (onopen ou opening ou quelque chose comme ça), dans lequel tu dois pouvoir lui dire de ne pas s'ouvrir.



Whismeril