我无法在选项卡页首次出现时将输入焦点放在文本框上(我使用的是Windows窗体,VB.NET 3.5)。
我在选项卡页上有一个面板中的文本框,并且当选项卡页出现时,我希望焦点在文本框上。我希望用户能够立即在聚焦的文本框中开始键入,而不必单击该文本框。我已经按照所需顺序设置了制表位,并且文本框是第一个制表位。制表符有效,只是当选项卡页面出现时,焦点没有在文本框上,也就是说,不在制表顺序中的第一个文本框上。
在选项卡页的“Enter”事件处理程序中,我调用文本框的“Focus”方法,但返回False并且什么都没有发生,没有错误消息。 我知道我可以访问该文本框,因为在代码的相同点上,我可以设置文本框的文本。
如果有影响,选项卡页的布局有点复杂:
frmFoo/TabControl1/TabPageX/Panel1/Panel2/TextBox1
我想将焦点设置在TextBox1上。
- 如何最好地使所需文本框获得焦点?
- 如果设置焦点是最佳方法,为什么textbox.Focus()方法失败了?
Me.Shown
的处理程序中完成此操作。 - Hannele