Как установить элемент меню по умолчанию в ContextMenuStrip? - PullRequest
21 голосов
/ 24 октября 2011

В моем приложении я использую элемент всплывающего меню при щелчке правой кнопкой мыши по объекту. Я динамически создаю это меню, используя такой код:

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

Теперь я хочу выделить один из этих пунктов меню жирным шрифтом (как это рекомендуется в Руководстве по взаимодействию с пользователем Windows), чтобы указать, какое действие соответствует двойному щелчку по объекту.

Как мне это сделать?

Ответы [ 2 ]

20 голосов
/ 24 октября 2011

используйте item.Font = new Font(item.Font, item.Font.Style | FontStyle.Bold), чтобы сделать жирный эффект для текущего шрифта.

Вы также можете автоматически выбрать элемент по умолчанию следующим образом:

private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) 
{
  contextMenuStrip1.Items[3].Select();
}
3 голосов
/ 24 октября 2011

Используйте свойство Font, чтобы указать шрифт с желаемым FontStyle:

myToolStripMenuItem.Font = new Font(
    FontFamily.GenericSansSerif,
    12.0F, FontStyle.Bold);

Очевидно, изменение входов для желаемого выхода, FontStyle.Bold является важной частью здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...