Keydown событие захвата цифровых клавиш - PullRequest
0 голосов
/ 09 августа 2009

VS 2008 SP1

Я хочу захватить цифровые клавиши от 0 до 9. И выполнить какое-либо действие, если на эти цифры нажали.

Я использую код ниже. Тем не менее, это, кажется, не работает правильно. Однако код не включается в коммутатор, как, когда я использую отладчик, чтобы увидеть, какое значение ключа было записано в e.KeyValue, он обнаруживает «LButton | ShiftKey | Space».

Однако не должен ли отображаться NumPad1?

Большое спасибо за совет,

 private void CATDialer_KeyDown(object sender, KeyEventArgs e)
        {
            // Play sound when use kits number key
            switch (e.KeyValue)
            {
                case Keys.NumPad1:
                    // Do something here
                    break;
            .
            .
            .
}

1 Ответ

1 голос
/ 09 августа 2009

Я использую этот код

private void tb_mds_port_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == 8) // do something if backspace is pressed
    {
        // ACTION
        e.Handled = true;
    } 
}

Для вашего кода используйте что-то вроде этого

if(e.KeyChar == (char)Keys.Return) // do something if return is pressed
{
   //ACTION
   e.Handled = true;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...