Изменить размер шрифта ContextMenu в C # - PullRequest
4 голосов
/ 19 сентября 2008

Можно ли изменить размер шрифта, используемого в ContextMenu, используя .NET Framework 3.5 и C # для настольного приложения? Кажется, это общесистемный параметр, но я хотел бы изменить его только в моем приложении.

Ответы [ 4 ]

6 голосов
/ 19 сентября 2008

Если вы определяете свое собственное контекстное меню с помощью ContextMenuStrip в Windows Forms, используйте свойство Font .

Если вы определяете свое собственное контекстное меню с помощью ContextMenu в WPF, используйте различные свойства Fontxxx , такие как FontFamily и FontSize .

Вы не можете изменить контекстные меню по умолчанию, которые поставляются с элементами управления; те определяются настройками системы. Так что если вы хотите «Копировать / Вырезать / Вставить / и т. Д.» В меню с пользовательским размером шрифта для WinForms TextBox вам нужно будет создать ContextMenuStrip с соответствующим размером шрифта и назначить его для свойства TextBox s ContextMenuStrip .

1 голос
/ 19 сентября 2008

В WPF:

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

В WinForms:

contextMenuStrip1.Font = new System.Drawing.Font("Segoe UI", 24F);
1 голос
/ 19 сентября 2008

Вы можете изменить размер шрифта System.Windows.Forms.ContextMenuStrip.

Если вам нужно изменить размер шрифта контекстного меню «Вырезать / Копировать / Вставить» в текстовых полях по умолчанию, я думаю, вам нужно установить свойство ContextMenu в пользовательское меню, которое заменяет меню по умолчанию.

0 голосов
/ 19 сентября 2008

Вы упоминаете .NET 3.5 - вы пишете в WPF? Если это так, вы можете указать размер шрифта для присоединенного свойства TextBlock.FontSize

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

Или вы можете указать его в стиле, который влияет на все пункты меню

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

Конечно, всегда лучше, чтобы настройки системы определяли размер шрифта. Некоторые люди, возможно, изменили его, чтобы лучше соответствовать своему физическому состоянию (например, плохое зрение) или оборудованию (большой / маленький экран). Что бы вы ни вводили в свой код, это будет неправильным выбором для некоторых людей, тогда как вы не дадите им возможности это изменить.

...