我的 WPF 应用程序中有一个搜索屏幕。屏幕实现为 TabControl 的 TabItem 中的 UserControl。当用户切换到“搜索”选项卡时,我希望焦点进入一个特定字段。
因此,我在 Xaml 中的 UserControl 标记中添加了一个 Loaded 事件处理程序,并调用了我希望在 Loaded 事件处理程序中获得初始焦点的控件的 Focus 方法。在我升级了我今天使用的 Telerik 控件库之前,这非常有效。现在,当我切换到“搜索”选项卡时,焦点不在我想要的字段中,但我不知道哪个控件具有焦点。
由于其他原因,我想要关注的领域已经有 GotFocus 和 LostFocus 事件处理程序。我记得在 Win Forms 中,LostFocus 事件处理程序参数告诉您哪个控件将获得焦点。所以我在我的 LostFocus 处理程序中放置了一个断点,并发现 WPF 中 LostFocus 事件处理程序的参数不包含该信息。
如果不将 GotFocus 处理程序放在我的 UserControl 中的每个控件上,我如何才能确定焦点的位置?
托尼