切换标签时关注控件

时间:2008-10-07 17:12:19

标签: c# .net

我想要做的是在选择该标签页时,将焦点设置到标签页上的特定控件(特别是TextBox)。

我试图在包含选项卡控件的Selected事件期间调用Focus,但这不起作用。之后我尝试在控件本身的VisibleChanged事件期间调用焦点(检查以便我不关注不可见的控件),但这也不起作用。

在搜索此网站时,我遇到了这个question,但这也无效。虽然在那之后,我确实注意到调用控件的Focus确实使其成为ActiveControl

2 个答案:

答案 0 :(得分:9)

我这样做了,似乎有效:

处理SelectedIndexChanged的{​​{1}}。 检查tabControl ==我想要的那个和 致电tabControl1.SelectedIndex

我正在使用VS 2008,BTW。


这样的事情有效:

textBox.Focus();

答案 1 :(得分:1)

尝试TabPage.Enter类似

        private void tabPage1_Enter(object sender, EventArgs e)
        {
            TabPage page = (TabPage)sender;
            switch (page.TabIndex)
            {
                case 0:
                    textBox1.Text = "Page 1";
                    if (!textBox1.Focus())
                        textBox1.Focus();

                    break;
                case 1:
                    textBox2.Text = "Page 2";

                    if (!textBox2.Focus())
                        textBox2.Focus();

                    break;
                default:
                    throw new InvalidOperationException();
            }
        }