如何在WPF中获得焦点控件?

qyzbxkaa  于 2023-10-22  发布在  其他
关注(0)|答案(3)|浏览(156)

如何在WPF中获得当前焦点控件?
我找到了WinForms的一些解决方案,但调用WIN32 API函数,在WPF中不起作用?
有没有办法在WPF中做到这一点?

gstyhher

gstyhher1#

我知道这是一个迟来的答案,但也许人们搜索可以找到这个有用的,我发现在msdn在“导航焦点编程”部分靠近页面底部:

UIElement elementWithFocus = Keyboard.FocusedElement as UIElement;
ijxebb2r

ijxebb2r2#

我是这么做的

protected override void OnPreviewLostKeyboardFocus(KeyboardFocusChangedEventArgs e)
{
    lostFocusControl = e.OldFocus;
}

private void PauseButton_PreviewKeyDown(object sender, KeyEventArgs e)
{
    // invoke OnPreviewLostKeyboardFocus handler
}
n6lpvg4x

n6lpvg4x3#

另一个解决方案:

bool FocusedElement = FocusManager.GetFocusedElement(this);

地址:https://stackoverflow.com/a/8077580/14648642

相关问题