vb.net tabpage使用用于选项卡面板问题的表单
我有一个简单的vb.net表单,一个tabpanel条,然后是一个单独的表单,为tabpage加载 以下是动态创建新选项卡的按钮的代码:vb.net tabpage使用用于选项卡面板问题的表单,vb.net,Vb.net,我有一个简单的vb.net表单,一个tabpanel条,然后是一个单独的表单,为tabpage加载 以下是动态创建新选项卡的按钮的代码: Dim tempTab As New TabPage initTab(tempTab) xt.TabPages.Add(tempTab) xt.SelectedIndex = xt.TabCount - 1 以下是initTab的代码: Dim tmpTab As New MainTab tmpTab.Dock
Dim tempTab As New TabPage
initTab(tempTab)
xt.TabPages.Add(tempTab)
xt.SelectedIndex = xt.TabCount - 1
以下是initTab的代码:
Dim tmpTab As New MainTab
tmpTab.Dock = DockStyle.Fill
tmpTab.Panel1.Dock = DockStyle.Fill
tab.Controls.Add(tmpTab)
tab.Text = "Untitled"
tab.Name = " "
我可以通过输入以下内容轻松设置任何选项卡的焦点,例如将焦点设置为最后一个选项卡:
xt.SelectedIndex = xt.TabCount - 1
现在的问题是,在我的示例MainTab中,如何将焦点设置为自定义表单上的文本框?我几乎尝试了所有我能用谷歌搜索到的东西,但我似乎找不到任何关于如何设置焦点的例子,甚至无法从MainTab表单中设置/获取任何内容
有人能帮我吗?呃,将表单转换为儿童控件需要一些手术。您必须将其TopLevel属性设置为false,隐藏边框,使其可见。我在代码片段中没有看到它,MainTab实际上是一个表单吗 无论如何,在控件可见之前,不能对其使用Focus方法。很可能它在代码片段中还不可见。改用Select方法。说:
tmpTab.TextBox1.Select()
或者只需在设计器中将第一个应获得焦点的控件的TabIndex属性设置为0。xt.Controlsxt.SelectedIndex.ControlsTEXTBOXNAME.focus
只需确保您设置了要聚焦的文本框的Name属性。在本例中,如果您这样做,则名称将为TEXTBOXNAME。select属性修复了问题,您是对的,控件不可见