ContextMenuStrip Largeur
-
22-08-2019 - |
Question
Je dois changer la largeur de ContextMenuStrip dynamiquement, par défaut, la largeur de ContextMenuStrip dépend de la longueur du texte des ToolstripmenuItems.
Et BTW je ne veux vraiment pas redessiner le contrôle à nouveau !!!
Merci d'avance.
La solution
Vous devez définir la propriété ContextMenuStrip AutoSize false. Ensuite, vous pouvez définir la propriété Largeur à tout ce que vous voulez. Lorsque AutoSize est définie sur true, la propriété Width est ignorée et est calculée dynamiquement.
Exemple:
Dim menu As New ContextMenuStrip()
menu.AutoSize = False
menu.Width = 100
Autres conseils
AutoSize fait un très mauvais travail de deviner la taille « correcte » de toute façon. Lorsque TRUE, le menu est beaucoup plus large que tout le texte aurait besoin d'être.
Lorsque vous définissez manuellement ... vous devez également régler la HAUTEUR pour être beaucoup moins que vous attendez ... si vous voulez afficher dans le menu de taille correcte.