Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Matriz controles en VB.NET??

477 views
Skip to first unread message

Inaki Luengas

unread,
Jun 1, 2010, 12:04:01 PM6/1/10
to
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

SoftJaén

unread,
Jun 1, 2010, 1:10:05 PM6/1/10
to
"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.

0 new messages