none
Enlazar TreeView con ComboBox RRS feed

  • Pregunta

  • Hola amigos

    Estoy desarrollando mi aplicación en VB.NET con Access 2010

    Tengo un formulario con un TreeView, un ComboBox y un DataGridView, he logrado cargar en el nodo padre del TreeView a mis clientes y en el nodo hijo los proyectos de cada cliente. necesito que mi aplicación muestre en el DataGridView el detalle del proyecto cuando seleccione el nodo hijo. al mismo tiempo debera cargarse en el ComboBox el nombre de la especialidad de la tabla detalle_proyecto para filtrar en el datagrid la especialidad.

    estas son mis tablas

    este es mi formulario

    alguien puede ayudarme con esto?

    • Cambiado Enrique M. Montejo sábado, 6 de diciembre de 2014 17:01 Pregunta relacionada con controles de Windows Forms.
    miércoles, 3 de diciembre de 2014 21:37

Todas las respuestas

  • Hola:

    Las estructuras de las tabla para este ejemplo son:

    cliente
    ============
    ID_CLIENTE [smallint]      PK
    NOMBRE [varchar](50)

    especialidad
    ================
    ID_ESPECIALIDAD [tinyint]   PK
    NOMBRE [varchar](50)

    proyecto
    ===============
    ID_PROYECTO [smallint]      PK
    NOMBRE [varchar](50)
    CLIENTE [smallint]               FK (Con la tabla cliente)

    proyecto_especialidad
    ========================
    PROYECTO [smallint]        PK, FK (Con la tabla proyecto)
    ESPECIALIDAD [tinyint]    PK, FK (Con la tabla especialidad)
    RESPONSABLE [varchar](50)

    El ComboBox lo cargas con los datos de la tabla especialidad. Cuando selecciona 1 item conoces la ESPECIALIDAD
    Cuando haces click en un nodo hijo  del Treeview, conoces el CLIENTE y el PROYECTO
    La consulta que tienes que hacer para cargar el DataGridView con los registros que cumplen estas 3 variables es:

    Select * From proyecto_especialidad
    Inner Join proyecto On proyecto.ID_PROYECTO=proyecto_especialidad.PROYECTO
    Where proyecto_especialidad.ESPECIALIDAD=Valor Seleccionado del ComboBox
    And proyecto_especialidad.PROYECTO=Valor Seleccionado del Treeview
    And proyecto.CLIENTE=Valor Seleccionado del Treeview

    P.D.
    Espero haberte entendido bien con lo que quieres

    Un saludo desde Bilbo
    Carlos

    jueves, 4 de diciembre de 2014 10:11
  • Hola Carlos

    La idea es que desplegar el treeview donde el nodo padre es el cliente y el nodo hijo es el proyecto que tiene el cliente, al seleccionar el nodo hijo el datagridview debe mostrar los datos de la tabla detalle_proyecto o proyecto_especialidad (segun lo has entendido) y el combobox debe cargarse con las especialidades que estan grabadas en proyecto_especialidad para que el usuario (si lo desea) filtre las especialidades que quiere mostrar en el datagrid.

    Gracias por el aporte!

    jueves, 4 de diciembre de 2014 17:26