Захват события keyup на уровне приложения в WPF - PullRequest
1 голос
/ 22 апреля 2010

Привет, у меня есть приложение, встроенное в wpf.

На базовом уровне у меня есть usercontrol, и в этом usercontrol много компонентов.

Я хочу иметь возможность фиксировать нажатие клавишисобытие в моем usercontrol, даже если основное внимание уделяется одному из детей.Использование PreviewKeyUp, похоже, не помогает.

Спасибо, Мэтт.

1 Ответ

0 голосов
/ 22 апреля 2010

Возможно, я понял ваш вопрос не полностью, но если вы не установите событие keydown для обработки, оно должно пойти вверх по иерархии.

public UserControl1()
          {
               InitializeComponent();
               this.KeyDown += new KeyEventHandler(UserControl1_KeyDown);
               textBox1.KeyDown += new KeyEventHandler(textBox1_KeyDown);
          }

          void textBox1_KeyDown(object sender, KeyEventArgs e)
          {
               Console.WriteLine("txt keydown: "+e.Key.ToString());
          }

          void UserControl1_KeyDown(object sender, KeyEventArgs e)
          {
               Console.WriteLine(e.Key.ToString());
          }

выход:

txt keydown: Y
Y
...