Pregunta

¿Es posible cambiar el tamaño de fuente utilizado en un ContextMenu utilizando .NET Framework 3.5 y C# para una aplicación de escritorio?Parece que es una configuración para todo el sistema, pero me gustaría cambiarla sólo dentro de mi aplicación.

¿Fue útil?

Solución

Si está definiendo su propio menú contextual a través de un ContextMenuStrip en Windows Forms, utilice el Fuente propiedad.

Si está definiendo su propio menú contextual a través de un ContextMenu en WPF, utilice los distintos fuentexxx propiedades como Familia tipográfica y Tamaño de fuente.

No puede cambiar los menús contextuales predeterminados que vienen con los controles;estos están determinados por la configuración del sistema.Entonces, si desea el "Copiar/cortar/pegar/etc.". Menú con un tamaño de fuente personalizado para una winforms TextBox, tendrás que crear un ContextMenuStrip con el tamaño de fuente apropiado y asígnelo al TextBox's ContextMenuStrip propiedad.

Otros consejos

Puede cambiar el tamaño de fuente de System.Windows.Forms.ContextMenuStrip.

Si necesita cambiar el tamaño de fuente del menú contextual predeterminado Cortar/Copiar/Pegar en los cuadros de texto, supongo que debe configurar la propiedad ContextMenu en un menú personalizado que reemplace el menú predeterminado.

En WPF:

<Window.ContextMenu FontSize="36">
    <!-- ... -->
</Window.ContextMenu

En WinForms:

contextMenuStrip1.Font = new System.Drawing.Font("Segoe UI", 24F);

Mencionas .NET 3.5: ¿estás escribiendo en WPF?Si es así, puede especificar el tamaño de fuente para la propiedad adjunta TextBlock.FontSize

<Whatever.ContextMenu TextBlock.FontSize="12">
  <MenuItem ... /> <!-- Will get the font size from parent -->
</Whatever.ContextMenu>

O puede especificarlo en un estilo que afecte a todos los elementos del menú.

<Style TargetType="MenuItem">
   <Setter Property="TextBlock.FontSize" Value="12" />
</Style>

Por supuesto, siempre es mejor dejar que la configuración del sistema determine el tamaño de fuente.Es posible que algunas personas lo hayan cambiado para que se ajuste mejor a su condición física (como problemas de visión) o hardware (pantalla grande/pequeña).Cualquier cosa que fuerces en tu código será una elección incorrecta para algunas personas, mientras que no les darás forma de cambiarlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top