Как перевести KeyCode для работы на Keys.SendKey - PullRequest
5 голосов
/ 11 ноября 2011

есть ли способ перевести KeyCode таким образом, который будет работать, если я использую его в Keys.Sendkey ();

private void Manager_KeyDown(object sender, KeyEventArgs e)
{
      Keys.SendKey(e.KeyCode.toString());
}

Я пытался таким образом, и он не будет работать, поэтому есть ли способ сделать это динамически.

Ответы [ 2 ]

2 голосов
/ 15 ноября 2011

Ну, я не знаю лучше, что, но это, вы должны захватить все ключи в событии KeyDown и отправить их в виде строки в этом формате с этого веб-сайта.

http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.send.aspx

1 голос
/ 11 ноября 2011

Ключи являются перечислением и не содержат метод SendKey. Однако вы можете сделать что-то вроде этого:

SendKeys.Send(Keys.A.ToString());

Вы также можете отправить несколько ключей с помощью конкатенации строк:

SendKeys.Send(Keys.A.ToString() + Keys.B.ToString());

Похоже, у меня работает этот код:

private void departmentList_KeyDown(object sender, KeyEventArgs e)
{
    Keys key = e.KeyCode;
    SendKeys.Send(key.ToString());
}

Также проверьте этот вопрос: SendKeys :: Send, Going Berserk * ​​1011 *. Какова ваша цель, если я могу спросить?

...