Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/12/2009, 04:50
Krato
 
Fecha de Ingreso: mayo-2008
Mensajes: 117
Antigüedad: 16 años
Puntos: 0
Respuesta: Controlar eventos de controles creados al vuelo

Bueno, parece mentira, pero justo ahora que acabo de prguntar, encuentro la respuesta, mmmm

Bueno, la respuesta es simple.

Hay que añadir un AddHandler para agregarle una accion al objeto.

Pongo un ejemplo:

Código vb.net:
Ver original
  1. Private Sub Muestras_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  2.         For i = 1 To Muestras
  3.             item = New Button
  4.             With item
  5.                 .Text = "Prueba " & i
  6.                 .Dock = DockStyle.Top
  7.             End With
  8.             AddHandler item.Click, AddressOf item_Click 'Le decimos que en el evento click del item vaya al sub item_Click :P
  9.             item.Top = Top
  10.             PanelMuestras.Controls.Add(item)
  11.             Top = Top + item.Height + 1
  12.         Next
  13.     End Sub
  14.  
  15. Private Sub item_Click(ByVal sender As Object, ByVal e As System.EventArgs)
  16.         Dim clic As Button
  17.         clic = sender 'Para acceder a los atributos del sender
  18.  
  19.  
  20.         MsgBox(clic.Text) 'Mostrara el texto del botón según el botón que hayas pulsado
  21.  
  22.         'Y ya está :D
  23.     End Sub

Espero que le sirva a alguien