這嚇壞了我,如果這是可能的,我會很樂意幫助。從另一個表格中將選項卡添加到TabControl
我是C#開發人員,但必須在VB.NET中執行此操作。
所以C#答案也被接受。
我有一個窗體上的選項卡控件。這個控件還沒有任何標籤。
當窗體加載時,它會加載一個「開始」頁面。它添加了標籤「tbpStart」並將表單加載到標籤頁「frmStart」。
在這個開始頁面上,我有很多單選按鈕。當我點擊一個單選按鈕時,它應該加載主窗體上的其他選項卡。
問題是如何將標籤添加到另一個窗體的一個窗體的標籤控件?
CODE:
當主窗體加載:
Try
'Load the Start Tab
Dim start As New frmTabStart
AddTabPage("Start", start)
Catch ex As Exception
PMComponentLibrary.PMMessageBox.ShowErrorMessage("Error occurred while trying to load the from.", ex)
End Try
主窗體上功能:
Public Sub AddTabPage(tabPageName As String, myForm As System.Windows.Forms.Form)
Try
myForm.TopLevel = False
myForm.Dock = DockStyle.Fill
myForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
Dim NewTab As New System.Windows.Forms.TabPage
NewTab.Name = "tab" + tabPageName
NewTab.Text = tabPageName
NewTab.Controls.Add(myForm)
tbcMain.TabPages.Add(NewTab)
myForm.Show()
Catch ex As Exception
Throw ex
End Try
End Sub
當我在一個單選按鈕點擊 「開始表」,它將執行此上a click_event:
If sender Is rdbWIPPostings Then
entity = New frmTabEntity()
mainForm.AddTabPage("Step 1", entity)
Application.DoEvents()
dte = New frmTabDate()
mainForm.AddTabPage("Step 2", dte)
wipSelect = New frmTabWIPSelect()
mainForm.AddTabPage("Step 3", wipSelect)
finish = New frmTabFinish()
mainForm.AddTabPage("Finish", finish)
End If
但是這些選項卡沒有被添加到主窗體。 我在做什麼錯?
你從哪兒弄來'這裏mainForm'? –
mainForm是子窗體上父窗體的實例。 –
讓我重新說明我的問題。你是如何設置'mainForm'的?它是否用'this'注入到子表單的構造函數中? –