Tabpage dinamicamente

13/05/2005 - 01:12 por Tabpages | Informe spam
Hola, os explico mi problema...
tengo un tabcontrol que tiene 7 tabpages y cada tabpage tiene un listview.
La cuestion es que me gustaria crear los listviews dinamicamente, ya que yo
los creo arrastrando el boton.
Al listview le doy estas caracteristicas:
ListView1.View = View.Details
ListView1.FullRowSelect = True
ListView1.GridLines = True
ListView1.LabelEdit = False
ListView1.Columns.Clear()
ListView1.Items.Clear()
ListView1.Columns.Add("Ejercicio", 150, HorizontalAlignment.Left)
ListView1.Columns.Add("Series", 90, HorizontalAlignment.Left)
ListView1.Columns.Add("Repeticiones", 90, HorizontalAlignment.Left)

si tengo que hacer esto siete veces es un poco follon... por eso me gustaria
hacerlo dinamicamente pero no se como... si me pudierais ayudar... Gracias

Preguntas similare

Leer las respuestas

#1 Carlos Gómez
13/05/2005 - 06:47 | Informe spam
Crea un módulo que contenga una subrutina o procedimiento el cual tenga como
entrada un objeto listview. Luego, dentro del procedimiento modificas las
propiedades que quieres.


"Tabpages" escribió en el mensaje
news:
Hola, os explico mi problema...
tengo un tabcontrol que tiene 7 tabpages y cada tabpage tiene un listview.
La cuestion es que me gustaria crear los listviews dinamicamente, ya que
yo
los creo arrastrando el boton.
Al listview le doy estas caracteristicas:
ListView1.View = View.Details
ListView1.FullRowSelect = True
ListView1.GridLines = True
ListView1.LabelEdit = False
ListView1.Columns.Clear()
ListView1.Items.Clear()
ListView1.Columns.Add("Ejercicio", 150, HorizontalAlignment.Left)
ListView1.Columns.Add("Series", 90, HorizontalAlignment.Left)
ListView1.Columns.Add("Repeticiones", 90, HorizontalAlignment.Left)

si tengo que hacer esto siete veces es un poco follon... por eso me
gustaria
hacerlo dinamicamente pero no se como... si me pudierais ayudar... Gracias

Respuesta Responder a este mensaje
#2 Pablo Fébolo
13/05/2005 - 14:43 | Informe spam
Configura un Listview (digamos en el primer tabPage)
y luego copia y pega el listview en los otros tabpages
(se mantendra toda la configuración)

Saludos.
Respuesta Responder a este mensaje
#3 Tristan
14/05/2005 - 11:14 | Informe spam
¿Sigues necesitando añadir dinámicamente?

Juan Carlos Badiola
MVP - C#
Respuesta Responder a este mensaje
#4 Tabpages
14/05/2005 - 14:22 | Informe spam
Bueno... al final lo hice como decia Pablo... pero me hubiese gustado mas
hacerlo dinamicamente...

"Tristan" escribió:

¿Sigues necesitando añadir dinámicamente?

Juan Carlos Badiola
MVP - C#



Respuesta Responder a este mensaje
#5 Tabpages
16/05/2005 - 18:38 | Informe spam
Muchas gracias Tristan, tengo una duda a ver si me la sabes resolver, es
sobre esto, me gustaria hacer un for para estos listviews, seria una cosa
asi...
for i=0 to 7
listview & "i".items.clear()
next

es que ahora lo tengo asi:
ListView1.Items.Clear()
ListView2.Items.Clear()
ListView3.Items.Clear()
ListView4.Items.Clear()
ListView5.Items.Clear()
ListView6.Items.Clear()
ListView7.Items.Clear()

el for que hago me da un error porque no declaro bien lo del listview & i...
sabes como seria o si se puede hacer? merci!




"Tristan" escribió:

No hay ninguna dificultad en crear controles dinámicamente. De hecho, en realidad todos los controles de un formulario windows forms se crean dinámicamente. Solo tienes que abrir la región de código que genera el diseñador, la que contiene InitializeComponents(), para ver como se crean dinámicamente los controles. El diseñador de windows forms, lo que hace es generar código para que se creen los controles en tiempo de ejecución.

Para lo que quieres, la forma más fácil es aprovechar el trabajo del diseñador, copiar/cortar-pegar el código generado y adaptarlo a tus necesidades. En general un control se crea así:

dim tuControl as new TipoControl
' asignas propiedades de tuControl
me.controls.Add(tuControl)

Para el caso de un TabControl es más o menos lo mismo, creas un TabPage y lo añades a lu colección TabPages. Los controles que quieras que se incluyan en una página tendrán como Parent la página y no el form (Me). Un ejemplo completo sería algo así:

Dim unTabControl As New TabControl

unTabControl.Bounds = New Rectangle(10, 10, 300, 200)

Dim i As Integer

Dim pagina As TabPage

For i = 1 To 8

pagina = New TabPage

pagina.Text = "Página " & i.ToString

Dim unTextBox As New TextBox

unTextBox.Location = New Point(5, 5)

unTextBox.Text = "Texto de " & i.ToString()

pagina.Controls.Add(unTextBox)

unTabControl.TabPages.Add(pagina)

Next

Me.Controls.Add(unTabControl)





Juan Carlos Badiola
MVP - C#
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida