bueno crear el TabPage es facil y meterle controles adentro tambien, aca un ejemplo simple que tambein maneja los eventos de cada control en cada tab.
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Call CrearTab()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TabControl1.TabPages.Remove(TabControl1.SelectedTab)
End Sub
Private Sub CrearTab()
Dim NewTab As New TabPage
NewTab.Name = "Tab" & TabControl1.TabCount
NewTab.Text = "Tab " & TabControl1.TabCount
Me.TabControl1.Controls.Add(NewTab)
Dim NewButton As New Button
NewButton.Name = "Button1"
NewButton.Top = 10
NewButton.Text = "Boton 1"
NewTab.Controls.Add(NewButton)
AddHandler NewButton.Click, AddressOf ClickBotones
Dim NewButton2 As New Button
NewButton2.Name = "Button2"
NewButton2.Top = 100
NewButton2.Text = "Boton 2"
NewTab.Controls.Add(NewButton2)
AddHandler NewButton2.Click, AddressOf ClickBotones
End Sub
Private Sub ClickBotones(ByVal sender As Object, ByVal e As EventArgs)
Dim whichButton As Button
Dim whichTabPage As Control
If TypeOf sender Is Button Then
whichButton = CType(sender, Button)
whichTabPage = whichButton.Parent
MessageBox.Show("Apretaste el " & whichButton.Name & " de la pestaña " & whichTabPage.Name)
End If
End Sub
End Class
el primer boton añade un tab con 2 botones adentro y el otro elimina la tab seleccionada.
tambien se manejan los eventos click de cada boton y se sabe de que tab vino el click.
es un simple ejemplo, lo tenes que optimizar.
saludos.
xD pero ahi ya estas aumentando el nivel con la incorporacion de eventos controlados,
xD no lo enreden =(
AddHandler NewButton2.Click, AddressOf ClickBotones
xD primero que aprenda a crear los controles dinamicamente, y despues como asignarle los eventos correctamente sino se perdera
Jeje. Bueno, sí. La verdad que me pegué un susto al ver el código porque soy algo nuevo en esto, pero me puse a leerlo e intentar comprenderlo y no parece tanto kilombo después de todo. Aunque es la primera vez que leo algo en .NET como AddHandler y AddressOf.
Acabo de leer acerca de estos y veo que van de la mano:
http://msdn.microsoft.com/es-es/library/7taxzxka(v=vs.80).aspxY me quedó mas que claro esta cuestión.
Así que muchas gracias por abrirme la cabeza,
Solo una cosita más, aunque suene obvia... si quisiera hacer que el nuevo TabPage quede exactamente igual que la "pestaña modelo" (por decirlo de alguna manera) debo especificar exactamente las
mismas y todas propiedades de aquellos controles ¿verdad? Como me pusiste vos Seba en el ejemplo que me pasaste:
NewButton2.Name = "Button2"
NewButton2.Top = 100
NewButton2.Text = "Boton 2"
·
·
·
NewButton2.[···]= [···]
¿Uno por uno a todos? ¿Se podría copiar directamente todas las propiedades de una vez?
Muchas gracias.
Saludos.