Modifica la dimensione del carattere del menu contestuale in C#
-
01-07-2019 - |
Domanda
È possibile modificare la dimensione del carattere utilizzata in un ContextMenu utilizzando .NET Framework 3.5 e C# per un'applicazione desktop?Sembra che sia un'impostazione a livello di sistema, ma vorrei modificarla solo all'interno della mia applicazione.
Soluzione
Se stai definendo il tuo menu contestuale tramite a ContextMenuStrip
in Windows Forms, utilizzare il file Font proprietà.
Se stai definendo il tuo menu contestuale tramite a ContextMenu
in WPF, utilizzare i vari Fontxxx proprietà come Famiglia di font E Dimensione del font.
Non è possibile modificare i menu contestuali predefiniti forniti con i controlli;quelli sono determinati dalle impostazioni di sistema.Quindi, se si desidera "Copia/taglio/incolla/ecc." Menu con una dimensione del carattere personalizzata per una Winforms TextBox
, dovrai creare un file ContextMenuStrip
con la dimensione del carattere appropriata e assegnarlo al file TextBox
'S ContextMenuStrip proprietà.
Altri suggerimenti
È possibile modificare la dimensione del carattere di un System.Windows.Forms.ContextMenuStrip.
Se è necessario modificare la dimensione del carattere del menu contestuale Taglia/Copia/Incolla predefinito nelle caselle di testo, suppongo che sia necessario impostare la proprietà ContextMenu su un menu personalizzato che sostituisca il menu predefinito.
Nel WPF:
<Window.ContextMenu FontSize="36">
<!-- ... -->
</Window.ContextMenu
In WinForms:
contextMenuStrip1.Font = new System.Drawing.Font("Segoe UI", 24F);
Hai menzionato .NET 3.5: stai scrivendo in WPF?In tal caso, è possibile specificare la dimensione del carattere per la proprietà associata TextBlock.FontSize
<Whatever.ContextMenu TextBlock.FontSize="12">
<MenuItem ... /> <!-- Will get the font size from parent -->
</Whatever.ContextMenu>
Oppure potresti specificarlo in uno stile che influisca su tutte le voci di menu
<Style TargetType="MenuItem">
<Setter Property="TextBlock.FontSize" Value="12" />
</Style>
Naturalmente è sempre meglio lasciare che siano le impostazioni di sistema a determinare la dimensione del carattere.Alcune persone potrebbero averlo modificato per adattarlo meglio alle loro condizioni fisiche (come problemi di vista) o all'hardware (schermo grande/piccolo).Qualunque cosa imponi nel tuo codice sarà la scelta sbagliata per alcune persone, mentre non darai loro modo di cambiarlo.