J'utilise ToolStripDropDown pour héberger le contrôle utilisateur en tant que fenêtre contextuelle. Le problème est lorsqu'une bande de menu contextuel est affichée à partir de cette fenêtre contextuelle, la fenêtre elle-même se ferme au moment où le menu contextuel s'ouvre. J'ai essayé de sous-classer ContextMenuStrip et ajouté WS_EX_NOACTIVATE à CreateParams mais rien n'a changé. J'ai d'abord pensé qu'il n'y avait aucun moyen de le faire puisque c'est un comportement commun, mais j'ai ensuite essayé de placer une classe TextBox sur le contrôle utilisateur pop-up et d'appeler le menu contextuel Edit control - et la fenêtre pop-up parent ne s'est pas fermée . Qu'est-ce qui me manque?Fenêtre contextuelle et menu contextuel
Répondre
Avait un problème similaire. Sur mon UserControll était une tooltrip. Lorsque j'ai appuyé sur le bouton toolsstripdropdown, la liste déroulante était affichée mais la fenêtre contextuelle disparaissait. La raison en était que popup.Autoclose était vrai. Après avoir mis à false, le popup n'est plus fermé.
ToolStripDropDown popup = new ToolStripDropDown();
popup.AutoClose = false; //Set to FALSE
popup.Margin = Padding.Empty;
popup.Padding = Padding.Empty;
ToolStripControlHost host = new ToolStripControlHost(userControl1);
host.Margin = Padding.Empty;
host.Padding = Padding.Empty;
popup.Items.Add(host);
popup.Show(button1, new Point(100,100));
Solution réelle devrait être celui dans le commentaire final de Martin: Utilisez ContextMenu au lieu de ContextMenuStrip Que l'on a travaillé pour moi, et ne ToolStripDropDown plus ferme par lui-même quand un clic droit sur l'un de ses contrôles de contenu, comme il devrait. Nous en avons toujours besoin pour AutoClose, désactiver AutoClose sur ToolStripDropDown fera de mauvaises choses, il est supposé se fermer en perdant le focus. Exemple: ouvrir une autre fenêtre d'application, et le ToolStripDropDown continuera à apparaître en haut
- 1. Aide contextuelle du menu contextuel de jQuery!
- 2. Fenêtre contextuelle ou déroulante
- 3. Création d'un menu contextuel personnalisé Fenêtre (WinAPI)
- 4. PyQt et le menu contextuel
- 5. Comment créer un menu contextuel jquery
- 6. menu d'options et le menu contextuel
- 7. Menu contextuel
- 8. Ouvrir une fenêtre contextuelle dans une fenêtre contextuelle dans ASP.NET
- 9. Comment ajouter un menu contextuel à NSOutlineView (ie menu contextuel)
- 10. Problème avec la fenêtre contextuelle jquery
- 11. Fenêtre contextuelle jquery programmatique
- 12. Sélénium - Fenêtre contextuelle
- 13. Fenêtre contextuelle DHTML
- 14. Fenêtre contextuelle non active
- 15. Fenêtre contextuelle Joptionpane
- 16. jsf, richfaces, fenêtre contextuelle
- 17. GTK: éléments du menu contextuel de positionnement w.r.t menu contextuel
- 18. Fenêtre contextuelle inférieure UIPicker?
- 19. Menu contextuel pour SWF chargé
- 20. Modèle de conception pour contextuel "contextuel" Menu
- 21. explorer contextuel menu contextuel avec python?
- 22. ToolStripButton avec menu contextuel?
- 23. Menu contextuel vs Popup
- 24. Menu contextuel MFC "collant"
- 25. menu contextuel parent?
- 26. Menu contextuel ExpandableListView
- 27. Barre d'outils DocumentViewer et menu contextuel
- 28. ListView personnalisé et menu contextuel. Comment l'obtenir?
- 29. Menu contextuel sous winforms
- 30. menu contextuel - javascript
Pourriez-vous nous montrer du code? –
Je suis un peu confus quant à ce que vous demandez. Je comprends le concept de l'hébergement d'un UserControl dans un ToolStripDropDown. Ce dont je ne suis pas sûr, c'est comment fonctionne une fenêtre contextuelle et un menu contextuel. Plus de deets s'il vous plait? Ou du code? – Ken
J'utilise ToolStripDropDown de la manière décrite dans cet article: http://www.codeproject.com/KB/menus/SuperContextMenu.aspx. La propriété ContextMenuStrip de la propriété UserControl hébergée est définie sur un menu contextuel qui s'affiche à l'aide du bouton droit de la souris, mais la fenêtre contextuelle ToolStripDropDown est fermée juste au moment où le menu contextuel est affiché. –