我在WPF中关注Control
内的Window
时遇到问题。
在Window
的构造函数上,我按如下方式添加TextBox
:
TextBox tb = new TextBox();
tb.Text = input;
tb.SelectAll();
tb.Focus();
我还在Focus()
加载的事件上再次调用Window
方法。
问题在于有时候窗户会聚焦,有时窗户会聚焦!这是一种非常奇怪的行为,我想知道是否有人遇到过同样的问题,并且可能会给我一些指导。
- 更新
我找到了造成问题的原因但尚无解决方案。我正在使用WIA扫描文档,这会导致ProgressBar
,这会使我的整个应用程序失去焦点。
我试过调用Application.Current.MainWindow.Focus()
,但这不能恢复焦点,有什么建议吗?
答案 0 :(得分:0)
从内存来看,我认为窗口创建的最后一次调用是Windows.Activated事件。您可以尝试在该事件上运行焦点代码吗?
答案 1 :(得分:0)
就像我在更新的问题中提到的那样,由于显示了另一个对话框,我的整个应用程序都失去了焦点,我最终使用的是:
Application.Current.MainWindow.Activate();
这会将焦点返回到我的应用程序,当显示Window
TextBox
时,Focus
会应用于此控件。
希望它有所帮助!