在WPF中的应用程序级别捕获密钥更新事件
嗨,我有一个内置wpf的应用程序 在底层,我有一个usercontrol,在这个usercontrol上有许多组件 我希望能够捕获usercontrol上的按键事件,即使焦点在其中一个子项上。使用PreviewKeyUp似乎不起作用 谢谢,在WPF中的应用程序级别捕获密钥更新事件,wpf,user-controls,key,children,Wpf,User Controls,Key,Children,嗨,我有一个内置wpf的应用程序 在底层,我有一个usercontrol,在这个usercontrol上有许多组件 我希望能够捕获usercontrol上的按键事件,即使焦点在其中一个子项上。使用PreviewKeyUp似乎不起作用 谢谢, Matt。也许我没有完全理解您的问题,但是如果您没有将keydown事件设置为handled,它应该上升到层次结构 public UserControl1() { InitializeComponent();
Matt。也许我没有完全理解您的问题,但是如果您没有将keydown事件设置为handled,它应该上升到层次结构
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