4

デスクトップアプリケーション用の.NETFramework3.5およびC#を使用して、ContextMenuで使用されるフォントサイズを変更することは可能ですか?システム全体の設定のようですが、アプリケーション内でのみ変更したいと思います。

4

4 に答える 4

6

ContextMenuStripWindows フォームで独自のコンテキスト メニューを定義する場合は、 Fontプロパティを使用します。

ContextMenuWPF で独自のコンテキスト メニューを定義する場合は、 FontFamilyFontSizeなどのさまざまなFontxxxプロパティを使用します。

コントロールに付属するデフォルトのコンテキスト メニューは変更できません。これらはシステム設定によって決定されます。したがって、「コピー/切り取り/貼り付けなど」が必要な場合。メニューを WinForms のカスタム フォント サイズでTextBox作成するには、適切なフォント サイズで を作成し、それをのContextMenuStripプロパティContextMenuStripに割り当てる必要があります。TextBox

于 2008-09-18T20:38:53.333 に答える
1

WPFの場合:

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

WinFormsの場合:

contextMenuStrip1.Font = new System.Drawing.Font("Segoe UI", 24F);
于 2008-09-18T20:50:47.267 に答える
1

System.Windows.Forms.ContextMenuStripのフォントサイズを変更できます。

テキストボックスのデフォルトの切り取り/コピー/貼り付けコンテキストメニューのフォントサイズを変更する必要がある場合は、ContextMenuプロパティをデフォルトメニューを置き換えるカスタムメニューに設定する必要があると思います。

于 2008-09-18T20:33:22.753 に答える
0

あなたは.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>

もちろん、システム設定でフォント サイズを決定できるようにすることをお勧めします。一部の人々は、自分の体調 (視力の低下など) またはハードウェア (大画面/小画面) に合わせて変更した可能性があります。コードに何を強制しても、一部の人にとっては間違った選択になりますが、それを変更する方法はありません。

于 2008-09-18T20:39:22.210 に答える