GotFocus
和GotKeyboardFocus
-andLostFocus
之间有什么区别LostKeyboardFocus
?
很抱歉这个简单的问题,但是,我用谷歌搜索并阅读了很多博客文章,但我仍然感到困惑。似乎没有人确切知道有什么区别):
更新:
我的用法:
Control
我正在通过扩展类来创建自定义控件。类似的东西,ComboBox
但有一些其他的影响。我试图Popup
通过设置一个属性来打开和关闭 a:IsDropDownOpen
就像ComboBox
通过GotFocus
和LostFocus
事件一样。Popup
当我编辑窗口时,我不想关闭Alt+Tab
,但是当我单击 aButton
例如或转到TextBox
. 我做了:
private static void OnGotFocusHandler(object sender, RoutedEventArgs e) {
if (e.Handled)
return;
((SearchBox)sender).IsDropDownOpen = true;
e.Handled = true;
}
private static void OnLostFocusHandler(object sender, RoutedEventArgs e) {
if (e.Handled)
return;
((SearchBox)sender).IsDropDownOpen = false;
e.Handled = true;
}
GotFocus
作品。但那个Lost
没有。如果我在窗口中做这些事情,或者Lost
进入非活动状态,那么该方法会被调用,而我不想要。我该如何解决?LostKeyboardFocus
Alt+Tab
Window