ContextMenuStrip Largura
-
22-08-2019 - |
Pergunta
É preciso mudar o ContextMenuStrip largura de forma dinâmica, por padrão, o ContextMenuStrip largura depende do comprimento do texto dos ToolstripmenuItems.
E BTW eu realmente não quero redesenhar o controle novamente !!!
Agradecemos antecipadamente.
Solução
Você precisa definir a propriedade ContextMenuStrip AutoSize para false. Em seguida, você pode definir a propriedade Largura para o que quiser. Quando AutoSize é definida como true, a propriedade largura é ignorado e é calculado dinamicamente.
Exemplo:
Dim menu As New ContextMenuStrip()
menu.AutoSize = False
menu.Width = 100
Outras dicas
AutoSize faz um trabalho muito pobre de adivinhar a "correta" tamanho de qualquer maneira. Quando TRUE, o menu é muito maior do que qualquer do texto seria necessário que ele seja.
Quando você defini-lo manualmente ... você também tem que definir o altura a ser muito menos do que seria de esperar ... se você quer que ele para exibir no menu de tamanho correto.