Matriz controles en VB.NET??

01/06/2010 - 18:04 por Inaki Luengas | Informe spam
Se puede crear una matriz de controles en VB .NET 2005 como se hacía antes
en VB 6.0???

Gracias y un saludo.
Iñaki Luengas

Preguntas similare

Leer las respuestas

#1 SoftJaén
01/06/2010 - 19:10 | Informe spam
"Inaki Luengas" preguntó:

Se puede crear una matriz de controles en VB .NET 2005 como
se hacía antes en VB 6.0???



No, pero sí puedes añadir un array de controles a la colección Controls del
formulario, tal y como muestro en el siguiente ejemplo, el cual añade seis
controles Button al formulario y utilizan el mismo evento Click:

Private Sub Form1_Load( _
ByVal sender As Object, _
ByVal e As EventArgs) Handles MyBase.Load

' Creamos un array con seis controles Button.
'
Dim btns() As Button = _
{New Button(), New Button(), New Button(), _
New Button(), New Button(), New Button()}

Dim n As Integer = 1

For Each btn As Button In btns
' Le asignamos ciertas propiedades.
With btn
.Name = "Button" & CStr(n)
.Text = .Name
.Location = New Point(10, 30 * n)
' Añadimos el controlador para el evento Click
AddHandler .Click, AddressOf ButtonOnClick
End With

n += 1
Next

' Añadimos la matriz de controles a la colección
' Controls del formulario.
'
Me.Controls.AddRange(btns)

End Sub


Private Sub ButtonOnClick(ByVal sender As Object, ByVal e As EventArgs)

' Referenciamos el control Button que ha
' desencadena el evento.
'
Dim btn As Button = DirectCast(sender, Button)

MessageBox.Show("Se ha hecho clic en el control " & btn.Name)

End Sub

Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida