Annuler l'action par défaut d'un clic droit sur un contrôle

fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 - 13 avril 2006 à 11:24
cs_reeda Messages postés 1 Date d'inscription vendredi 23 septembre 2005 Statut Membre Dernière intervention 28 juillet 2009 - 28 juil. 2009 à 17:13
Bonjour,

La réponse doit déjà exister, donc avant de me faire tuer par un admin CS, j'ai cherché (peut-être mal) avant de poser cette question. :-)
Monpb, j'utilise un contrôle ListBar (dont je n'ai pas le code sources), le créateur de ce contrôle a donné la possibilité d'ajouter de groupe et item en mode exploitation via un menu contextuel, je ne vois pas comment virer ce menu.
Est-il possible de d'annuler l'affichage de ce menu dans l'évément control_MouseDown ?

Merci.

4 réponses

Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
13 avril 2006 à 12:47
Salut, ton contôle a t'il une propriété ContextMenu, si c'est le cas essaye ça :

myControl.ContextMenu = new ContextMenu( );

Sinon faudrait tenter d'overrider WndProc.
0
fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 4
13 avril 2006 à 16:57
La propriété ContextMenu fait que dalle, j'ai essaie de lui associer un menu vide, rien n'a changer :-(
Donc je vais tenter WndProc.

Merci.
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
15 avril 2006 à 19:16
Salut,

Si l'affectation d'un menu vide ne fait rien, il doit probablement géré lui même l'affichage du menu lors du mousedown/up du bouton droit.
Il est accessible publiquement ce contrôle ?

/*
coq
MVP Visual C#
*/
0
cs_reeda Messages postés 1 Date d'inscription vendredi 23 septembre 2005 Statut Membre Dernière intervention 28 juillet 2009
28 juil. 2009 à 17:13
Bonjour,

même si ce sujet est resté sans réponse, depuis hyper longtemps (plus de 3ans ), mais il m'a aidé à trouver la solution, pour le même problème,

La solution est comme l'a dit Lutinore, on affecte new ContextMenu() à la propriété ContextMenu du contrôle en question,

Mais pour que ça marche il faudrait la programmer au niveau de l'évènement MouseDown, et le tour est joué.

j'espère que cette petite solution aidera d'autres personnes,

Merci

bien cordialement
0
Rejoignez-nous