在C#中更改tabpages时,将焦点从文本框更改为另一个?

时间:2013-05-15 17:38:45

标签: c# focus tabcontrol enter tabpage

我在表单中有几个标签。每个选项卡都有一个文本框。当我进入tabpage1时,我设法将焦点设置在textBox1上。当我按下tabpage1中的按钮时,我跳转到控制器中的随机选项卡。我现在想要的是将焦点设置在活动标签页中的textBox上。我尝试过使用tabpage_Enter事件,但它似乎不起作用。我的代码看起来像这样:

    private void tabPage2_Enter(object sender, EventArgs e)
    {
        textBox2.Select();

    }

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

我认为您需要使用TabControl的SelectedIndexChanged事件而不是_Enter,使用Enter事件,每次光标进入tabPage控件时焦点都会更改为textBox2。

答案 1 :(得分:0)

您可以使用Focus()方法将焦点设置在文本框中。我可能会设置tabPage_Enter事件。

private void tabPage_Enter(object sender, EventArgs e){
{
    var tab = sender as tabPage;
    if(!tab.Focused) tab.focus();
}
相关问题