Текстовое поле только для чтения, не позволяющее использовать ярлык меню - PullRequest
1 голос
/ 28 сентября 2011

У меня есть текстовое поле, которое доступно только для чтения. У меня также есть пункт меню на панели инструментов, в котором есть сочетание клавиш Ctrl + R. Когда фокус находится в текстовом поле, ярлык элемента меню на панели инструментов больше не работает.

Я могу пересечь событие нажатия клавиши и проверить, была ли клавиша Ctrl + R, но, поскольку я использую элемент управления универсального текстового поля, для этого потребуется поднять событие или передать делегат для вызова заданных определенных ключей в моем элементарном элементе управления. ,

Есть ли у кого-нибудь опыт запуска ярлыка в меню всплывающей подсказки, если фокус находится на элементе управления только для чтения?

1 Ответ

0 голосов
/ 29 сентября 2011
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) 
{
  if (keyData == (Keys.Control | Keys.R)) 
  {
      MessageBox.Show("Handle with care! :)");
  }

  return base.ProcessCmdKey(ref msg, keyData);
}

Поместите эту логику в форму, содержащую элемент управления только для чтения.

...