Подтвердить что ты не робот

Как вы связываете клавиши Enter и Esc с кнопками "ОК" и "Отмена" соответственно в диалоговом окне WPF?

В моем приложении WPF используется диалог с кнопками Ok и Cancel. Я хотел бы привязать клавишу Enter к кнопке Ok и клавишу Esc к кнопке Cancel. Похоже, это должно быть простое дело.

4b9b3361

Ответ 1

Попробуйте установить свойство IsDefault на кнопке ok на true, а свойство IsCancel на кнопке отмены на true.

Ответ 2

В Visual Studio 2015 вы больше не можете устанавливать свойство IsDefault. Вы должны использовать KeyCode. Везде, где курсор фокуса будет последним, перейдите к свойству "KeyDown" и напишите этот код

    /// <summary>
    /// This property enables the Keyboard key "enter" and relates it to the login button.
    /// The event will be triggered if the focus of the cursor is in the password text field.
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void login_KeyDown(object sender, KeyEventArgs e)
    {
        if(e.KeyCode == Keys.Enter)
        {
            loginBtn_Click(sender, e);
        }
    }

В этом случае, когда фокус курсора находится в текстовом поле поля пароля, и вы нажмете клавишу ввода, это приведет к этому даже.