制作我自己的 UserControl,我可以将新的 TabPages 聚合到 TabControl,然后在 TabPage 内部,我使用以下代码添加自己的 UserControl。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim TabX As New Windows.Forms.TabPage("Tab " & TabCount.ToString) '(ConfiguracionTabPage)
Dim MyControl As New ClientesEmpresa
MyControl.Name = "Control" & TabCount.ToString
If ClientesTabControl.TabPages.Count = 10 Then
ClientesTabControl.TabPages.RemoveAt(9)
End If
TabX.Controls.Add(MyControl)
TabX.Name = "Tab" & TabCount.ToString
TabX.Text = "Tab" & TabCount.ToString
MyControl.TitularLbl.Text = "Coca Cola"
Me.ClientesTabControl.TabPages.Insert(0, TabX)
Me.ClientesTabControl.SelectedIndex = 0
TabCount += 1
End Sub
我的用户控件有几个标签、文本框和 TabPages(在 TabControl 内)。
现在我想从源代码中动态更改一些属性,但我不知道如何访问它们。我发现的最相似的主题是How to Acces of an User control in c#,但是,正如标题所说,在 C# 中,我如何在 VB.NET 中做到这一点?
抱歉,我只是注意到 Enter 键发布了评论。:(
感谢您的反馈,我明白您在说什么,但我在中间遗漏了一些东西。
当我在上面的代码中在运行时创建控件时,我可以轻松访问所创建对象的属性,在本例中是我的 UserControl,但我不明白如何从外部访问该控件的特定实例的属性Button_Click; IE。另一个 button_click 事件(第二个按钮)
我正在考虑使用类似的东西
Dim ControlList As Windows.Forms.Control() = Me.ClientesTabControl.TabPages(0).Controls.Find("ModeloLbl", True)
或者
ClientesTabControl.TabPages(0).Controls.OfType(Of AlarmasVehiculo)()
但我被困在这里。
------------------------------------- 第 3 篇文章 ------------ ----
谢谢史蒂夫,我使用“Control.Find”和 For Each 解决了,但您的解决方案更容易。
有什么方法可以获取选定选项卡的名称,或者我必须在创建新 TabPage 时创建一个数组?,想法是仅在用户或每个用户选择时更新选定选项卡内的控件文本5 秒,但只是在选定的一个。
谢谢。