Can I remove the dotted focus rectangle over tabs on a TabControl?

前端 未结 2 1512
轻奢々
轻奢々 2021-02-14 21:59

I have a tab control and need to remove the dotted focus rectangle around the selected tab.

I have set the TabStop property of the TabControl to false. However if I clic

相关标签:
2条回答
  • 2021-02-14 22:41

    Yes, DrawItem event. You didn't post it, impossible to guess what's wrong with it. Just make sure that you don't call e.DrawFocusRectangle(), likely to present when you copied the MSDN sample code. Simply deleting the statement is sufficient. Consider using a different background color or text font style as an alternative so the focus hint isn't entirely lost.

    0 讨论(0)
  • 2021-02-14 22:58

    Set the focus to tab instead of header (like this)

    private void tabControl1_Click(object sender, EventArgs e)
    {
        (sender as TabControl).SelectedTab.Focus();
    }
    

    You will see dotted rectangle for a millisecond, as soon as the above event gets executed it will disappear.

    Also, to remove dotted rectangle for default selected tab on load

    private void tabControl1_Enter(object sender, EventArgs e)
    {
        (sender as TabControl).SelectedTab.Focus();
    }
    

    Both this changes worked for me! hope it helps somebody.

    0 讨论(0)
提交回复
热议问题