Jump to content

Variáveis entre forms


Ricardo Santos RiMo

Recommended Posts

Boa noite

Sou inexperiente em VBasic e precisava de uma ajuda para um projeto.

Tenho um form que abre dentro de um painel. Nele tenho um botão que abre um 2º form em showdialog e queria que ao fechar o 2º form  adicionasse o valor da variável recolhida no campo do 1º form.

Já experimentei normalmente a passar entre forms mas os dados não são adicionados possivelmente por o 1º form estar aberto dentro de um painel.

Em baixo envio parte do código para ver se alguém me consegue ajudar.

 

Abro o 1º form no painel da seguinte maneira:

Public Sub OpenChieldForm(ChieldForm As Form)
        If CurrenteChieldForm IsNot Nothing Then
            CurrenteChieldForm.Close()
        End If
        CurrenteChieldForm = ChieldForm
        With ChieldForm
            .TopLevel = False
            .FormBorderStyle = FormBorderStyle.None
            .Dock = DockStyle.Fill
        End With
        Panel_Contenedor.Controls.Add(ChieldForm)
        Panel_Contenedor.Tag = ChieldForm
        ChieldForm.BringToFront()
        ChieldForm.Show()
    End Sub

    Private Sub Btn_CriarEncomenda_Click(sender As Object, e As EventArgs) Handles Btn_CriarEncomenda.Click
        OpenChieldForm(New Form_CriarEditarEncomendas)

    End Sub

Com um botão dentro do 1º form abro o 2º form:

    Private Sub Btn_AbreLista_Click(sender As Object, e As EventArgs) Handles Btn_AbreLista.Click
        Form_SelecionarCliente.ShowDialog()

    End Sub

Depois no 2º form tenho um datagrid que ao clicar em confirmar adiciona o valor pretendido do datagrid numa variável publica e queria que ao fechar este form esses dados fossem adicionados nos respetivo campo indicado do 1º form, mas nada acontece. 

Private Sub SelecionaClientes()
        Id_Cliente_Selecionado = Tab_ClientesSelecionadoDataGridView.CurrentRow.Cells("IdClienteDGV").Value
        Form_CriarEditarEncomendas.IdClienteTextBox.Text = Id_Cliente_Selecionado
        Close()

    End Sub

    Private Sub Btn_Confirmar_Click(sender As Object, e As EventArgs) Handles Btn_Confirmar.Click
        SelecionaClientes()

    End Sub

Passar dados entre forms sem estarem abertos dentro de paineis eu consigo fazer, agora estando 1 aberto num painel não estou a conseguir.

Agradecia a ajuda para esta situação, Obrigada.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.