【发布时间】:2013-04-24 09:11:01
【问题描述】:
我在关注 WPF 中 Window 中的 Control 时遇到问题。
在Window 的构造函数上,我添加了一个TextBox,如下所示:
TextBox tb = new TextBox();
tb.Text = input;
tb.SelectAll();
tb.Focus();
我还在Window加载事件上再次调用Focus()方法。
问题是有时窗口聚焦而有时却没有!这是一种非常奇怪的行为,我想知道是否有人遇到过同样的问题并且可以给我一些指导。
-- 更新
我找到了导致问题的原因,但还没有解决方案。我正在使用 WIA 扫描文档,这会显示一个 ProgressBar,这会使我的整个应用程序失去焦点。
我试过打电话给Application.Current.MainWindow.Focus(),但这并不能恢复焦点,有什么建议吗?
【问题讨论】:
-
在
Window_Loaded事件结束时执行此操作,可能是您将焦点设置到其他控件。 -
将 Focus() 调用移至 Window.Loaded 事件是否有帮助?编辑:Habib 打败了我 :)
-
正如我在问题中提到的,我确实在
Loaded事件上再次致电Focus()无济于事。 -
@ChrisjanLodewyks,加载的事件在哪里?这些行应该是事件的最后一行。
-
@Habib,它是加载事件中的唯一行。