KeyDown事件不在WPF中触发

时间:2013-05-30 18:48:21

标签: wpf vb.net keydown

我使用WPF和VB.Net作为编码语言。

当我按任意键时,在某些按键上,如所有字母键keyDown事件很好地触发,但如果我使用箭头键,则keyDown事件不会触发。在WPF上我不知道该怎么做。 winForms也有同样的问题。但是KeyPress活动非常有效。

我在谷歌上搜索过,但我得到了同样的答案。

this.KeyPreview = True;

但我使用的是VB.Net。我无法在VB.Net中找到任何this对象

1 个答案:

答案 0 :(得分:0)

问题可能是视觉树中的某些内部控件在按下箭头键时捕获事件。在这种情况下,您应该监听处理过的事件。下面的代码解决了它,但它在C#中,你应该适应它:

visualObjetToCaptureKey.AddHandler(Keyboard.KeyDownEvent,
            new KeyEventHandler((sender,e)=>{
                                                   //event handler
                                                  }), 
                                                     true);

在事件处理程序中,您应该放置要执行的内容。您还可以设置一个方法来处理事件。希望它有效...