Winform - SetFocus到TabControl上的usercontrol内的文本框

时间:2015-06-25 14:24:29

标签: c# winforms user-controls focus

Winform应用程序 多个标签 在选项卡上复制Usercontrol

单击特定选项卡时,我想将setfocus设置为usercontrol中的文本框。如果可能的话,我想在tabControl_SelectedIndexChanged事件中使用它。

例如:

textbox name = txtOne
txtOne驻留在UserControlA中 UserControlA驻留在tabControl.SelectedTab.Text =" Tab2"

当我点击Tab2时,我希望将Focus设置为txtone。

我试过了:(以及其他很多东西!) UserControlA.Controls [" txtone&#34]。全选(); - 返回未设置为对象实例的对象引用

谢谢!

1 个答案:

答案 0 :(得分:0)

由于txtone不是UserControlA的直接子项,UserControlA.Controls["txtone"]将返回null。

您可以使用控件名称(UserControlA.Controls["fameFD"].Controls["txtone"])深入控制层次结构,或者只是将txtone公开为UserControl类中的公共字段或属性。后者看起来像这样:

public TextBox TxtOne {
    get
    {
        return txtone;
    }
}

然后你可以从外部代码中引用文本框,如下所示:

UserControlA.TxtOne.SelectAll();