Я хочу использовать кнопки клавиатуры Y и N для подтверждения всплывающего окна - PullRequest
0 голосов
/ 12 марта 2020

Я хочу использовать кнопки клавиатуры Y и N для подтверждения всплывающего диалогового окна. то есть используйте эти кнопки на клавиатуре, чтобы нажать кнопку winform вместо того, чтобы щелкать мышью C#

enter image description here

Ответы [ 2 ]

0 голосов
/ 12 марта 2020

Я сделал до захвата менеджера событий для захвата ввода.

Введите при запуске код ниже:

EventManager.RegisterClassHandler(typeof(Window), Keyboard.KeyUpEvent, new KeyEventHandler(PressedNumber), true);

Вкл. PressedNumber метод: -

private void PressedNumber(object sender, KeyEventArgs e)
{
    try
    {
       // Validate if allow to use Yes No e.g. if (allowListener) {}
        var isLegit = e.Key == Key.Y || e.Key == Key.N;
        if (isLegit)
        {
                if (e.Key == Key.Y)
                {
                    // DO IF YES
                }
                else if (e.Key == Key.N)
                {
                    // DO IF NO
                }
        }
    }
    catch (Exception ex)
    {
        string error = $"Error at pressed number event manager. Ex-{ex.Message}";

    }
}

Если это ваше собственное диалоговое окно, вы также можете прослушивать событие нажатия клавиш при загрузке всплывающего окна.

  1. Для Windows форм вы можете обратиться к Обработка ввода с клавиатуры на уровне формы
  2. Для WPF вы можете обратиться к WPF KeyDown Обработчик событий
0 голосов
/ 12 марта 2020

Вы можете поймать событие, которое срабатывает, когда вы нажимаете Y или N. Одним из этих событий является «нажатие клавиши». Подробнее об этом: https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.control.keypress

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...