2010-04-22 126 views
1

嗨,我有一个应用程序内置wpf。在WPF中的应用程序级别捕获关键事件

在基本级别,我有一个用户控件,并在该用户控件上有很多组件。

即使焦点在其中一个孩子身上,我也希望能够捕捉到我的用户控件上的按键事件。使用PreviewKeyUp似乎没有办法。

谢谢, 马特。

回答

0

也许我没有完全理解你的问题,但是如果你没有设置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 
相关问题