如何设置ContextMenuStrip中的默认菜单项?

23

在我的应用程序中,当右键单击对象时,我使用弹出菜单项。我使用类似以下代码动态构建此菜单:

ContextMenuStrip menu = new ContextMenuStrip();
menu.Items.Add(new ToolStripMenuItem("Item1", aNiceImage, someFunction));
menu.Items.Add(new ToolStripMenuItem("Item2", alsoNiceImage, someOtherFunction));

现在我想将这些菜单项中的一个设置为加粗(因为根据Windows用户体验指南,推荐这样做)以指示哪个操作对应双击对象。

我该如何实现?

2个回答

24

使用item.Font = new Font(item.Font, item.Font.Style | FontStyle.Bold)可将当前字体设置为加粗效果。

您也可以按照以下方式自动选择默认项目:

private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) 
{
  contextMenuStrip1.Items[3].Select();
}

在 WPF 项目中,这对我有效 ToolStripMenuItem1.Font = new Font(ToolStripMenuItem1.Font, System.Drawing.FontStyle.Bold); - vinsa

3
使用 Font 属性来指定所需的字体,包括 FontStyle:
myToolStripMenuItem.Font = new Font(
    FontFamily.GenericSansSerif,
    12.0F, FontStyle.Bold);

显然需要修改输入以获得所需的输出,这里FontStyle.Bold部分很重要。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接