Foros del Web » Programación para mayores de 30 ;) » .NET »

Dar evento a un array de controles

Estas en el tema de Dar evento a un array de controles en el foro de .NET en Foros del Web. Hola saludos a todos, bueno tengo una duda estoy realizando un array de controles de Treviews con checkbox ,asi genero el array de acuerdo a ...
  #1 (permalink)  
Antiguo 27/10/2010, 11:09
Avatar de traviz88  
Fecha de Ingreso: julio-2007
Ubicación: lima - villa maria
Mensajes: 31
Antigüedad: 16 años, 9 meses
Puntos: 0
Pregunta Dar evento a un array de controles

Hola saludos a todos, bueno tengo una duda estoy realizando un array de controles de Treviews con checkbox ,asi genero el array de acuerdo a mi consulta de BD :
Código:
   Sub CARGAR_MENU()
        Dim dv As New DataView(CLASE_SUBMENU.LISTAR_SUBMENU("Usp_Listar_Menu_02"))
        Dim cantidad As Integer = dv.Count
        Dim x As Integer = 3, y As Integer = 3
        If cantidad > 0 Then
            For i As Integer = 0 To cantidad - 1
                ReDim Preserve ARBOL(i)
                ARBOL(i) = New TreeView
                ARBOL(i).Name = dv.Item(i)(0)
                ARBOL(i).Nodes.Add(Trim(dv.Item(i)(1)))
                ARBOL(i).CheckBoxes = True
                ARBOL(i).BorderStyle = BorderStyle.None
                ARBOL(i).BackColor = System.Drawing.SystemColors.Control
                ARBOL(i).SetBounds(x, y, 172, 152)
                Me.pnMenu.Controls.Add(ARBOL(i))
                x += 182
                Dim codigo As String = Trim(dv.Item(i)(0))
                Dim dv2 As New DataView(CONSULTAR(codigo))
                Dim cant2 As Integer = dv2.Count
                If cant2 > 0 Then
                    For j As Integer = 0 To cant2 - 1
                        ARBOL(i).Nodes(0).Nodes.Add(dv2.Item(j)("cod_opc"), StrConv(Trim(dv2.Item(j)("nom_opc")), VbStrConv.ProperCase))
                    Next
                End If
                ARBOL(i).ExpandAll()
                dv2.Dispose()
            Next
        End If
        dv.Dispose()
    End Sub
Aqui genero varios treview dependiendo de mi consulta, lo que deseo es darles el mismo Evento como AfterCheck para que al dar clic a un check dentro del cualquier treview "x" generado se ejecute la consulta..bueno El treview se ejecuta en el load de mi Form...Gracias de antemano por la ayuda-.

Última edición por traviz88; 27/10/2010 a las 11:16
  #2 (permalink)  
Antiguo 27/10/2010, 16:26
Avatar de xjuanch0x  
Fecha de Ingreso: septiembre-2009
Mensajes: 125
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Dar evento a un array de controles

Código vb:
Ver original
  1. Sub CARGAR_MENU()
  2.         Dim dv As New DataView(CLASE_SUBMENU.LISTAR_SUBMENU("Usp_Listar_Menu_02"))
  3.         Dim cantidad As Integer = dv.Count
  4.         Dim x As Integer = 3, y As Integer = 3
  5.         If cantidad > 0 Then
  6.             For i As Integer = 0 To cantidad - 1
  7.                 ReDim Preserve ARBOL(i)
  8.                 ARBOL(i) = New TreeView
  9.                 ARBOL(i).Name = dv.Item(i)(0)
  10.                 ARBOL(i).Nodes.Add(Trim(dv.Item(i)(1)))
  11.                 ARBOL(i).CheckBoxes = True
  12.                 ARBOL(i).BorderStyle = BorderStyle.None
  13.                 ARBOL(i).BackColor = System.Drawing.SystemColors.Control
  14.                 ARBOL(i).SetBounds(x, y, 172, 152)
  15.  
  16.  'Con esto agregas el mismo manejador para todos controles dentro del  'array
  17.                AddHandler  ARBOL(i).AfterCheck , AddressOf AfterCheckManejador
  18.  
  19.                 Me.pnMenu.Controls.Add(ARBOL(i))
  20.                 x += 182
  21.                 Dim codigo As String = Trim(dv.Item(i)(0))
  22.                 Dim dv2 As New DataView(CONSULTAR(codigo))
  23.                 Dim cant2 As Integer = dv2.Count
  24.                 If cant2 > 0 Then
  25.                     For j As Integer = 0 To cant2 - 1
  26.                         ARBOL(i).Nodes(0).Nodes.Add(dv2.Item(j)("cod_opc"), StrConv(Trim(dv2.Item(j)("nom_opc")), VbStrConv.ProperCase))
  27.                     Next
  28.                 End If
  29.                 ARBOL(i).ExpandAll()
  30.                 dv2.Dispose()
  31.             Next
  32.         End If
  33.         dv.Dispose()
  34.     End Sub



Con este código agregas el manejador a cada uno de los controles dentro de la colección de objetos.
__________________
Juan David Torres Vasquez
[email protected]
Microsoft Certified Technology Specialist (MCTS)
DCE Platinum en Visual C# y VB.NET
  #3 (permalink)  
Antiguo 27/10/2010, 23:44
Avatar de traviz88  
Fecha de Ingreso: julio-2007
Ubicación: lima - villa maria
Mensajes: 31
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Dar evento a un array de controles

xjuanch0x gracias por el apoyo ya me salio lo que deseaba hacer ,no entendia bien como generar el addhandler esa era mi duda.. buen nuevamente gracias..
Saludos

Etiquetas: controles, dar, eventos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:06.