使我自己的UserControl,我可以聚合新的TabPages到TabControl,然後,在TabPage內,我使用下面的代碼添加我自己的UserControl。如何從代碼端訪問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中做到這一點?
對不起,我只是注意到,回車鍵發表評論。 :(
感謝您的反饋,我明白你在說什麼,但我缺少中間的東西。
當我創建在上面的代碼運行時間控制,我可以很容易地訪問到的屬性創建的對象,在這種情況下我的用戶控件,但我不明白如何從Button_Click外部達到該控件的特定實例的屬性;即另一個button_click事件(第二個按鈕)
我正在考慮使用像
Dim ControlList As Windows.Forms.Control() = Me.ClientesTabControl.TabPages(0).Controls.Find("ModeloLbl", True)
或
ClientesTabControl.TabPages(0).Controls.OfType(Of AlarmasVehiculo)()
但是我卡在這裏。
------------------------------------- 3th post ------- --------
謝謝史蒂夫,我解決了使用「Control.Find」和一個For Each,但你的解決方案更容易。
有什麼辦法可以獲得所選標籤的名稱,或者我在創建新標籤頁時必須創建一個數組?我的想法是僅在選擇標籤時更新所選標籤內的控件的文本用戶或每5秒,但只是在選定的一個。
謝謝。
感謝Four的反饋,我明白你在說什麼,但我錯過了中間的東西。 –
對不起,我只是注意到輸入發表評論。 :( –
嗨,史蒂文,很抱歉,我的第二篇文章;這個論壇的作品與我學習的不同 –