TabControl取消首次定位焦点

界面上拖了一个TabControl控件有3个TabPage,但是每每首次切换TabPage时表单页面都会自动将TabControl定位到中央,给使用者造成很突兀的感觉。反复尝试发现是因为首次切换时Focus属性的值是true。意思就是首次切换是TabControl是自动获取到焦点的,但是再次切换就不会获取焦点了。解决的思路有了,代码如下:

 

    #region TabControl focus

    private void CancelTabControlFocus()

    {

      System.Windows.Forms.TabControl tc=this["tabControl4"] as TabControl;

      tc.SelectTab(0);

      tc.SelectTab(1);

      tc.SelectTab(2);

      tc.SelectTab(0);

    }

    #endregion

 

虽然有点投机取巧的成分,但是问题解决是最主要的。另外TabControl的CanFocus属性为只读,所以暂时只能以这种蹩脚的方式解决了,更优的方案欢迎指导。

 

你可能感兴趣的:(tab)