none
¿Como abrir un form desde un combobox cuando selecciono un dato en visual basic 2005? RRS feed

  • Pregunta

  • Buenas tarde disculpa la molestia pero ando aprendiendo visual basic 2005 y me trabe porq no se como hacerle noc si me puedas ayudar.

    esq tengo un comobobox y quiero que al seleccionar un dato del combo me abra un formulario, esq para cada dato del combo tengo un formulario diferente.

    domingo, 1 de noviembre de 2009 17:09

Respuestas

  • Hola:

    Si lo que pretendes es abrir un formulario mediante el nombre del formulario seleccionado en el control ComboBox, deberás utilizar el espacio de nombres System.Reflection.

    Si por ejemplo, tu proyecto se llama «WindowsApplication1», y dentro de él tienes varios formularios (Form2, Form3, Form4, etc., que son los elementos que aparecen en el control ComboBox), abrirías dichos formularios ejecutando el siguiente código de Visual Basic .NET en el evento SelectedIndexChanged del control Combobox.

    Private Sub ComboBox1_SelectedIndexChanged( _
        ByVal sender As Object, _
        ByVal e As EventArgs) Handles ComboBox1.SelectedIndexChanged
    
            ' si no se ha seleccionado ningún elemento
            ' abandonamos el procedimiento.
            '
            If ComboBox1.SelectedIndex = -1 Then Return
    
            ' Obtenemos el texto seleccionado
            '
            Dim text As String = ComboBox1.Text
    
            Try
                ' Referenciamos el ensamblado que se está ejecutando. 
                ' 
                Dim asm As System.Reflection.Assembly = _
                    System.Reflection.Assembly.GetExecutingAssembly()
    
    
                ' Obtenemos una referencia de un objeto Form que 
                ' conocemos que se encuentra en el ensamblado actual. 
                ' 
                Dim frm As Form = _
                    CType(asm.CreateInstance("WindowsApplication1." & text), Form)
    
                frm.Show()
    
            Catch ex As Exception
                MessageBox.Show(ex.Message)
    
    
            End Try
    
    End Sub
    
    

     Un saludo


    Enrique Martínez [MS MVP - VB]
    domingo, 1 de noviembre de 2009 18:48

Todas las respuestas

  • Hola:

    Si lo que pretendes es abrir un formulario mediante el nombre del formulario seleccionado en el control ComboBox, deberás utilizar el espacio de nombres System.Reflection.

    Si por ejemplo, tu proyecto se llama «WindowsApplication1», y dentro de él tienes varios formularios (Form2, Form3, Form4, etc., que son los elementos que aparecen en el control ComboBox), abrirías dichos formularios ejecutando el siguiente código de Visual Basic .NET en el evento SelectedIndexChanged del control Combobox.

    Private Sub ComboBox1_SelectedIndexChanged( _
        ByVal sender As Object, _
        ByVal e As EventArgs) Handles ComboBox1.SelectedIndexChanged
    
            ' si no se ha seleccionado ningún elemento
            ' abandonamos el procedimiento.
            '
            If ComboBox1.SelectedIndex = -1 Then Return
    
            ' Obtenemos el texto seleccionado
            '
            Dim text As String = ComboBox1.Text
    
            Try
                ' Referenciamos el ensamblado que se está ejecutando. 
                ' 
                Dim asm As System.Reflection.Assembly = _
                    System.Reflection.Assembly.GetExecutingAssembly()
    
    
                ' Obtenemos una referencia de un objeto Form que 
                ' conocemos que se encuentra en el ensamblado actual. 
                ' 
                Dim frm As Form = _
                    CType(asm.CreateInstance("WindowsApplication1." & text), Form)
    
                frm.Show()
    
            Catch ex As Exception
                MessageBox.Show(ex.Message)
    
    
            End Try
    
    End Sub
    
    

     Un saludo


    Enrique Martínez [MS MVP - VB]
    domingo, 1 de noviembre de 2009 18:48
  • vengo comenzando con esto de programacion y me gustaría saber , a la hora de que selecciono una opción de mi comboBox me abra un from que tiene un listado de la información que necesito 

    por ejemplo mi from se llama Proteínas 

    y la hora de que seleccione en el comboBox proteínas me aparezca ese from 

    martes, 10 de mayo de 2016 21:47