TabControl选项卡更改后,WPF设置焦点失败

问题描述

当我在标签之间切换时,我将焦点放在该标签的第一个字段上。

    private void TabControl_SelectionChanged(object sender,SelectionChangedEventArgs e)
    {
         if (Add.IsSelected) {
             UpdateLayout();
             AddItemNumber.Focus();
         }
         ..more code like this for other tabs
    }

这有效。除了一种情况。我有一些代码在某些情况下会自动触发跳转到“查看”选项卡(与“添加”选项卡不同的选项卡)。我可以通过以下任一代码触发跳转

                MyTabControl.Selectedindex = 0;
                MyTabControl.SelectedItem = View;
                Add.IsSelected = true;

或此代码

dispatcher.BeginInvoke((Action)(() => MyTabControl.Selectedindex = 0));

无论哪种情况,只要我单击任何选项卡,自动跳转运行后,焦点便不再起作用。似乎运行基于代码的选项卡更改会破坏将焦点设置在任何选项卡中任何组件上的能力。有趣的是,如果我单击任何可修复该问题的选项卡中的字段,此后,当我单击选项卡时,焦点将再次开始工作。我很困惑。对正在发生的事情以及如何做有什么想法?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)