Cor*_*kie 20 .net c# focus winforms
说我有一个Textbox嵌套在一个TabControl.
当表单加载时,我想关注它Textbox(默认情况下焦点设置为TabControl).
只是textbox1.focus()在Load表单的情况下调用似乎不起作用.
我已经能够通过执行以下操作来关注它:
private void frmMainLoad(object sender, EventArgs e)
{
foreach (TabPage tab in this.tabControl1.TabPages)
{
this.tabControl1.SelectedTab = tab;
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:
有没有更优雅的方式来做到这一点?
sam*_*son 46
以下是解决方案:
private void frmMainLoad(object sender, EventArgs e)
{
ActiveControl = textBox1;
}
Run Code Online (Sandbox Code Playgroud)
然而,更好的问题是为什么......我不完全确定那个问题的答案是什么.
编辑:我怀疑它与表单和TabControl都是容器这一事实有关,但我不确定.
小智 14
试着把它放在Form_Shown()活动中.因为它在容器中,所以放入Form_Load甚至Form()构造函数都行不通.