Visual Basic.NET - Como crear un array de controles de un form

 
Vista:

Como crear un array de controles de un form

Publicado por miguel (86 intervenciones) el 19/01/2007 08:07:34
Hola, ¿alguien sabe como puedo crear un array de los controles textbox de un formulario?

:-) Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como crear un array de controles de un form

Publicado por Javier Suero (30 intervenciones) el 19/01/2007 09:04:33
Hola, Miguel,

te mando una función que te vale para el tipo de control que quieras filtrar.

Public Shared Function ControlesPorFormulario(ByVal pForm As Form, ByVal pTipo As Type) As ArrayList
Dim Coleccion As New ArrayList
For Each Hijo As Control In pForm.Controls
If pControl.GetType Is pTipo Then Coleccion.Add(pControl)
Next
Return Coleccion
End Function

Saludos, Javier.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como crear un array de controles de un form

Publicado por miguel (86 intervenciones) el 19/01/2007 17:04:07
Gracias por tu ayuda Javier. La verdad lo necesitaba.

:-) Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como crear un array de controles de un form

Publicado por miguel (86 intervenciones) el 19/01/2007 21:33:27
Una pregunta mas. ¿De que tipo es pTipo?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como crear un array de controles de un form

Publicado por Javier Suero (30 intervenciones) el 20/01/2007 19:32:45
De nada, hombre,
te explico un poco la historia.

La verdad es que te escribí muy rápido y puse mal la función. Esta está ok:

Public Shared Function ControlesPorFormulario(ByVal pForm As Form, ByVal pTipo As Type) As ArrayList
Dim Coleccion As New ArrayList
For Each Hijo As Control In pForm.Controls
If Hijo.GetType Is pTipo Then Coleccion.Add(Hijo)
Next
Return Coleccion
End Function

pTipo es del tipo que tú quieras buscar. Por ejemplo

Dim Lista As ArrayList = ControlesPorFormulario(Me, Type.GetType("Button"))

Esa lista se llenará con los controles del tipo Button que estén en la colección Controls del formulario.

Ojo. Si metes un panel en el formulario y un botón dentro del panel, no aparecerá en esta colección (la del formulario), si no en la del panel. De manera que si quieres saber todos, todos, los botones que hay en el formulario tendrás que recorrer de manera recursiva todos las colecciones Controls de todos los controles que haya en el formulario.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como crear un array de controles de un form

Publicado por miguel (86 intervenciones) el 22/01/2007 19:22:59
Ok. De nuevo gracias por tu ayuda.

:-) Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar