Я пытаюсь отправить правильный сдвиг + Ctrl к моему RichTextBox
. Но по умолчанию он отправляет левые клавиши.Имитация правой Shift + Ctrl с SendKeys.Send()
SendKeys.Send("^+");
Есть в любом случае для имитации правой сдвиг + Ctrl?
Я пытаюсь отправить правильный сдвиг + Ctrl к моему RichTextBox
. Но по умолчанию он отправляет левые клавиши.Имитация правой Shift + Ctrl с SendKeys.Send()
SendKeys.Send("^+");
Есть в любом случае для имитации правой сдвиг + Ctrl?
Да, вы можете, вы можете проверить Virtual-Key Codes где код для правой клавиши сдвига и правой клавиши управления является
VK_RSHIFT 0xA1
VK_RCONTROL 0xA3
Так что вы можете сделать, как
public const int VK_RSHIFT = 0xA1;
public const int VK_RCONTROL= 0xA3;
или
Вы можете попробовать следующее:
SendKeys.Send(VirtualKeyCode.VK_RSHIFT);
или же вы можете использовать Keys Enumeration
Определяет ключевые коды и модификаторы.
, который определяет
RShiftKey для правой клавиши сдвига и RControlKey для правой клавиши управления.
или прокомментирован kevintjuh93
SendKeys.Send("^({RSHIFT}+)")
У вас нет класса 'Keys' в C#? – kevintjuh93
Итак, как мне отправлять ключи с этими кодами. что-то вроде 'SendKeys.Send (« 0xA1 »+« 0xA3 »);'? –
@ kevintjuh93: - Да, есть, обновил мой ответ. –
'{RShift} +' должны работать правильно? – kevintjuh93
@ kevintjuh93 '{RSHIFT}' throws 'Ключевое слово" RSHIFT "недействительно.' –
Это странно, по нескольким источникам он должен работать. В любом случае, вам, вероятно, понадобится «PostMessage». Можете ли вы также сказать, почему вам нужно отправить эти ключи в RTB? – kevintjuh93