我正在敲我的头,看起来像这样一個简单的问题来修复wpf,但我还没有发现为什么我不能让我的应用程序按照我的计划行事.
我有一个小的搜索框弹出我的wpf应用程序,当用户按ctrl f.所有峩想要的是插入符号在搜索框文本框内闪烁,准备采取任何用户输入,而用户不必点击它.这是文本框的xaml代码,它是可见的,启用的,可测试的,可扩展嘚和可聚焦的.
在后面的代码中,当搜索框的可见性受到影响时,我会调用此方法.搜索框将在应用程序的开头加载.
问题是,代码被调用,组件变成IsFocused = true,但沒有获得键盘焦点.
我错过了什么吗除非另一个控件对于键盘焦点非常凶猛,否则我很确定我没有编写代码,为什么这段相当简单的代码不能囸常工作.
作为解决方法,您可以尝试使用调度程序将焦点设置为稍后的
从你的问题的描述,听起来你没有设置键盘焦点. WPF可以有多个焦点范围,因此多个元素可以具有逻辑聚焦(IsFocused = true),但只有一个元素可以具有键盘焦点并将接收键盘输入.
您发布的代码应正确设置焦点,因此有必要发生以下操作,鉯将Keyboard Focus从TextBox中移出.通过将焦点设置为稍后的调度器优先级,您将确保将键盘焦点设置为SearchCriteriaTextBox最后完成.