none
Сопоставления элемента Button физической кнопке на клавиатуре WPF RRS feed

  • Вопрос

  • Здравствуйте. Вновь прошу помощи: есть форма, на ней есть кнопка:

     

    <Button Content="Войти" Margin="115,0,114,20.04" VerticalAlignment="Bottom" Click="Button_Click" ClickMode="Press" IsCancel="False"  />
    

    Как сделать так, чтобы эта кнопка срабатываал при нажатии Enter на клавиатуре? На WinForms вроде параметр был такой, типа AcceptKey, но в WPF ни в студии, ни в Expression Blend не смог углядеть ничего похожего.

     

     

    Зараннее благодарю ^_^


    MSDN AA User
    • Изменено asdfxcbneftyherwe 16 января 2012 г. 20:25
    • Перемещено Abolmasov Dmitry 6 февраля 2012 г. 11:04 (От:Языки программирования)
    16 января 2012 г. 20:25

Ответы

  • > есть форма, на ней есть кнопка [...] Как сделать так, чтобы эта кнопка срабатываал при нажатии Enter на клавиатуре? На WinForms вроде параметр был такой, типа AcceptKey

    <Button IsDefault="True" ... />
    

    • Помечено в качестве ответа asdfxcbneftyherwe 17 января 2012 г. 6:17
    16 января 2012 г. 20:54
  • > можно ли сопоставлять элементы button любым кнопкам на клавиатуре?


    для перехвата нажатий надо подключить обработчик к событию PreviewKeyDown.
     
    public MainWindow()
    {
       InitializeComponent();
       this.PreviewKeyDown += (s, e) =>
       {
          if (e.Key == Key.Enter) 
          { 
            // ... 
          }
       };
    }
    
    
     
    • Помечено в качестве ответа asdfxcbneftyherwe 17 января 2012 г. 9:10
    17 января 2012 г. 8:03

Все ответы

  • > есть форма, на ней есть кнопка [...] Как сделать так, чтобы эта кнопка срабатываал при нажатии Enter на клавиатуре? На WinForms вроде параметр был такой, типа AcceptKey

    <Button IsDefault="True" ... />
    

    • Помечено в качестве ответа asdfxcbneftyherwe 17 января 2012 г. 6:17
    16 января 2012 г. 20:54
  • И ещё вопрос: можно ли сопоставлять элементы button любым кнопкам на клавиатуре?
    MSDN AA User
    17 января 2012 г. 7:26
  • > можно ли сопоставлять элементы button любым кнопкам на клавиатуре?


    для перехвата нажатий надо подключить обработчик к событию PreviewKeyDown.
     
    public MainWindow()
    {
       InitializeComponent();
       this.PreviewKeyDown += (s, e) =>
       {
          if (e.Key == Key.Enter) 
          { 
            // ... 
          }
       };
    }
    
    
     
    • Помечено в качестве ответа asdfxcbneftyherwe 17 января 2012 г. 9:10
    17 января 2012 г. 8:03