Alterar tamanho de ContextMenu fonte em C #
-
01-07-2019 - |
Pergunta
É possível alterar o tamanho da fonte usada em um ContextMenu usando o .NET Framework 3.5 e C # para um aplicativo de desktop? Parece que é uma configuração de todo o sistema, mas eu gostaria de mudá-lo apenas dentro de minha aplicação.
Solução
Se você está definindo o seu próprio menu de contexto através de um ContextMenuStrip
no Windows Forms, use o Fonte propriedade.
Se você está definindo o seu próprio menu de contexto através de um ContextMenu
em WPF, use os vários Fontxxx propriedades, tais como FontFamily e TamanhoDoTipoDeLetra .
Você não pode alterar os menus de contexto padrão que vêm com controles; aqueles são determinadas pelas configurações do sistema. Então, se você quiser que o "copiar / cortar / colar / etc." menu com um tamanho de fonte personalizada para um TextBox
WinForms, você terá que criar um ContextMenuStrip
com o tamanho da fonte apropriado e atribuí-lo ao de TextBox
ContextMenuStrip propriedade.
Outras dicas
Você pode mudar o tamanho da fonte de um System.Windows.Forms.ContextMenuStrip.
Se você precisar alterar o tamanho da fonte do padrão Cut / Copy / Paste menu de contexto em caixas de texto, eu acho que você precisa para definir a propriedade ContextMenu a um menu personalizado que substitui o menu padrão.
Em WPF:
<Window.ContextMenu FontSize="36">
<!-- ... -->
</Window.ContextMenu
Em WinForms:
contextMenuStrip1.Font = new System.Drawing.Font("Segoe UI", 24F);
Você menciona NET 3.5 - você está escrevendo em WPF? Se assim for, você pode especificar o tamanho da fonte para o TextBlock.FontSize propriedade anexada
<Whatever.ContextMenu TextBlock.FontSize="12">
<MenuItem ... /> <!-- Will get the font size from parent -->
</Whatever.ContextMenu>
Ou, você pode especificá-lo em um estilo que afeta todos os itens do menu
<Style TargetType="MenuItem">
<Setter Property="TextBlock.FontSize" Value="12" />
</Style>
É claro, é sempre melhor deixar a configuração do sistema determinar o tamanho da fonte. Algumas pessoas podem ter mudado para que se ajuste melhor a sua condição física (como o pobre visão do olho) ou hardware (grande / pequeno ecrã). O que quer que você força em seu código será a escolha errada para algumas pessoas, enquanto você lhes dá nenhuma maneira de mudá-lo.