Как программно установить сочетания клавиш в .NET? - PullRequest
0 голосов
/ 23 июня 2010

В моем приложении у меня есть выпадающее меню "недавние файлы". Он будет содержать от 0 до 9 файлов для загрузки. Я хочу установить комбинации клавиш для этих пунктов меню таким образом, чтобы Ctrl + 1 загружал первый файл, Ctrl + 2 загружал второй и т. Д.

Я понимаю, что мне нужно установить свойство ShortcutKeys для ToolStripMenuItem, но я ищу способ сделать это внутри цикла. У меня есть файлы в массиве, из которого я читаю их при первоначальном построении меню.

Я бы хотел иметь возможность сделать что-то вроде ...

for (int i = 0; i < files.Count; i++)
  files[i].ShortcutKeys = Keys.Control + Keys.D0 + i;

Но добавление целочисленных типов к перечисляемым типам не допускается.

Является ли мое лучшее решение для создания некоторой функции, которая инкапсулирует оператор switch?

1 Ответ

0 голосов
/ 23 июня 2010

Примерно так:

for (int i = 0; i < files.Count; i++)
  if(i <= 12) files[i].ShortcutKeys = Keys.Control | (Keys)i+48;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...