none
consulta como ver los botones y cajas desde otro formulario vb.bet RRS feed

  • Pregunta

  • buenos dias

    señores programadores si me pueden orientar por favor estoy haciendo una aplicacion y tengo problemas al tratar de llamarlo desde otro formulario los controles

    por ejemplo tengo  un formulario que se llama wfrm_diseño_mesas en este formulario necesito llamarlos los controles del otro formulario que se llama wfrm_comanda

    este es mi error por favor 

    viernes, 5 de agosto de 2016 13:54

Respuestas

  • las propiedades:

    Public Property ValorTexto1() As String Get Return Textbox1.Text End Get Set(ByVal value As String) Textbox1.Text = value End Set End Property Public Property ValorTexto2() As String Get Return Textbox2.Text End Get Set(ByVal value As String) Textbox2.Text = value End Set End Property


    va en el segundo formulario el que llamas wfrm_comanda

    lo que hace esto es crear propiedades que son publicas para que se puedan llamar desde otros formularios, en el ejemplo que te coloque solo cambiara texto de un textbox pero si necesitas por ejemplo cambiar el estado activo o inactivo podria manejar al propiedad de tipo boolean 

    Public Property ActivarBoton() As Boolean Get Return Boton1.Enabled End Get Set(ByVal value As Boolean) Boton1.Enabled = value End Set End Property

    desde el fomulario principal (wfrm_diseño_mesas) haces el llamado a la propiedades no a los controles directamente algo asi:

    Dim Formulario2 as new wfrm_comanda

    Formulario2.ValorTexto1= "Texto para textbox 1"

    Formulario2.ValorTexto2= "Texto para textbox 2"

    Formulario2.ActivarBoton = True

    Formulario2.show()


    Harold Chia

    • Marcado como respuesta djnilo viernes, 5 de agosto de 2016 17:53
    viernes, 5 de agosto de 2016 15:20

Todas las respuestas

  • Tengo una duda, por que requeries llamar los controles desde otro formulario? necesitas disparar algun evento de un boton? o cambiar alguna propiedad de los controles. 

    Harold Chia

    viernes, 5 de agosto de 2016 14:06
  • Por lo que veo necesitas colocar texto en un textbox de otro formulario, lo que haria mas bien es exponer una propiedad por cada textbox que necesites que cambiar, asi en wfrm_comanda crearias propiedades

    Public Property ValorTexto1() As String
            Get
                Return Textbox1.Text
            End Get
            Set(ByVal value As String)
                Textbox1.Text = value
            End Set
        End Property

    Public Property ValorTexto2() As String
            Get
                Return Textbox2.Text
            End Get
            Set(ByVal value As String)
                Textbox2.Text = value
            End Set
        End Property

    y en el formulario wfrm_diseño_mesas

    Dim Formulario2 as new wfrm_comanda

    Formulario2.ValorTexto1= "Texto para textbox 1"

    Formulario2.ValorTexto2= "Texto para textbox 2"

    Formulario2.show()


    Harold Chia

    viernes, 5 de agosto de 2016 14:28
  • Por lo que veo necesitas colocar texto en un textbox de otro formulario, lo que haria mas bien es exponer una propiedad por cada textbox que necesites que cambiar, asi en wfrm_comanda crearias propiedades

    Public Property ValorTexto1() As String
            Get
                Return Textbox1.Text
            End Get
            Set(ByVal value As String)
                Textbox1.Text = value
            End Set
        End Property

    Public Property ValorTexto2() As String
            Get
                Return Textbox2.Text
            End Get
            Set(ByVal value As String)
                Textbox2.Text = value
            End Set
        End Property

    y en el formulario wfrm_diseño_mesas

    Dim Formulario2 as new wfrm_comanda

    Formulario2.ValorTexto1= "Texto para textbox 1"

    Formulario2.ValorTexto2= "Texto para textbox 2"

    Formulario2.show()


    Harold Chia

    gracias por responder Harold Chia

    pero donde pongo ese codigo que mensionas mas arriaba

    Public Property ValorTexto1() As String
            Get
                Return Textbox1.Text
            End Get
            Set(ByVal value As String)
                Textbox1.Text = value
            End Set
        End Property
    
    Public Property ValorTexto2() As String
            Get
                Return Textbox2.Text
            End Get
            Set(ByVal value As String)
                Textbox2.Text = value
            End Set
        End Property
     

    error que tengo me dice que los controles son privados como los dejo publico para poder llamarlos desde otro formulario

    este formulario se llama Wfrm_diseño_mesas

    WFrm_COMANDA.txtdescripcion.Text = Convert.ToString(DataGridView1.Rows.Item(z).Cells(6).Value)


    viernes, 5 de agosto de 2016 14:45
  • las propiedades:

    Public Property ValorTexto1() As String Get Return Textbox1.Text End Get Set(ByVal value As String) Textbox1.Text = value End Set End Property Public Property ValorTexto2() As String Get Return Textbox2.Text End Get Set(ByVal value As String) Textbox2.Text = value End Set End Property


    va en el segundo formulario el que llamas wfrm_comanda

    lo que hace esto es crear propiedades que son publicas para que se puedan llamar desde otros formularios, en el ejemplo que te coloque solo cambiara texto de un textbox pero si necesitas por ejemplo cambiar el estado activo o inactivo podria manejar al propiedad de tipo boolean 

    Public Property ActivarBoton() As Boolean Get Return Boton1.Enabled End Get Set(ByVal value As Boolean) Boton1.Enabled = value End Set End Property

    desde el fomulario principal (wfrm_diseño_mesas) haces el llamado a la propiedades no a los controles directamente algo asi:

    Dim Formulario2 as new wfrm_comanda

    Formulario2.ValorTexto1= "Texto para textbox 1"

    Formulario2.ValorTexto2= "Texto para textbox 2"

    Formulario2.ActivarBoton = True

    Formulario2.show()


    Harold Chia

    • Marcado como respuesta djnilo viernes, 5 de agosto de 2016 17:53
    viernes, 5 de agosto de 2016 15:20
  • Otro ejemplo como lo exponen aqui:

    http://oscarsotorrio.com/post/2008/10/19/Acceder-a-los-controles-de-otro-formulario.aspx

    Sin embargo desde el fomulario inicial debes saber los nombres de cada control. Revisa ambas opciones haber cual se adecua a lo que necesitas


    Harold Chia

    viernes, 5 de agosto de 2016 15:25
  • muchas gracias Harold Chia me servido 
    viernes, 5 de agosto de 2016 17:54