/ / Programovo vytvárať karty v TabControl - vb.net, winforms, tabcontrol

Programovo vytvárať karty v TabControl - vb.net, winforms, tabcontrol

Mám formulár obsahujúci tabcontrol, ktorý chcemupraviť na základe zadania používateľa na predchádzajúcom formulári. Vytvoril som tabcontrol s názvom "TabControl" (kreatíva, viem) a snažím sa pridať kartu pre každú hodnotu poľa "tabNames ()". Pri ladení programu zadávam hodnoty do poľa na prvom formulári a pri načítaní druhého formulára nedostanem nič v mojom tabcontrol. Nejaké nápady?

Public Sub frmContent_Load(ByVal sender As Object, ByVal e As EventArgs)
lblTitle.Text = frmiFormCreator.txtTitle.Text
For i As Integer = 0 To frmiFormCreator.numberOfTabs
Dim tabPage(frmiFormCreator.numberOfTabs) As TabPage
tabPage(i).Text = frmiFormCreator.tabNames(i)
TabControl.TabPages.Add(tabPage(i))
Next
End Sub

odpovede:

5 pre odpoveď č. 1

Skúste vytvoriť objekt TabPage:

For i As Integer = 0 To frmiFormCreator.numberOfTabs
Dim newPage As New TabPage()
newPage.Text = frmiFormCreator.tabNames(i)
TabControl.TabPages.Add(newPage)
Next

Tiež váš kód vyzerá, akoby to bolo vytvorenie extra karty. Možno to chcete:

For i As Integer = 0 To frmiFormCreator.numberOfTabs - 1

1 pre odpoveď č. 2

vyskúšať

Public Sub frmContent_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
lblTitle.Text = frmiFormCreator.txtTitle.Text
For i As Integer = 0 To frmiFormCreator.numberOfTabs
Dim tabPage As New TabPage(frmiFormCreator.tabNames(i))
TabControl.TabPages.Add(tabPage)
Next
End Sub