如何根据打开的选项卡保存带有选项卡的文本框?

How do I save textboxes with tabs depending which tab is open?

我正在尝试在 vb.net

中创建文档编写器

所以我决定添加一个选项卡控件,这样我就可以在按下按钮时创建一个新选项卡。我想将文本保存在打开的选项卡中。我根据打开的选项卡创建了一个 returns 文本函数,但这只适用于两个默认选项卡。如果我创建了一个新标签,我不知道如何保存。

获取文本的函数是这样的:

Public Function getText() As String
If tabPage1.Visible = True Then
Return mainText.Text
ElseIf tabPage2.Visible = True Then
Return textBox1.Text
End If
End Function

我在网上做了一些研究,我什至查看了 SharpDevelop 的源代码,但我找不到任何东西。 提前致谢!

编辑:

Public Sub setText(Byval value As String)
  If tabPage1.Visible = True Then
     mainText.Text = value
  ElseIf tabPage2.Visible = True Then
     textBox1.Text = value
  End If
End Sub

有谁知道我将如何根据打开的选项卡确定打开的功能(和以前一样。)

如果我理解正确的话,您是想在每个 tabPage 中动态生成一个文本框。如果是这种情况,您可以使用此代码概括您的 GetText 函数

Function GetText() As String
    If tabControl1.SelectedTab IsNot Nothing Then
        Return tabControl1.SelectedTab.Controls.OfType(Of TextBox)().First().Text
    End If

End Function

这要求您在每个页面中至少有一个文本框(并且您的 TabControl 名为 tabControl1)。 SelectedTab 属性(如果不是什么都没有)是您的 tabControl

显示的当前 tabPage