none
Duvida heranca de formulario. RRS feed

  • Pergunta

  • Ola,

    Tenho um formulario filho com datagrid e alguns botoes. No filho, alterei o comportamento de alguns botoes, quando clico em um botao por exemplo, eu adiciono valores ao datagrid do filho. Vamos supor que tenho 5 linhas no datagrid. Quando eu clicar no botao voltar que ira retornar ao formulario pai, eu gostaria de ter os valores que adicionei no datagrid do filho, no datagrid do formulario pai. Segue abaixo o que tentei fazer no formulario filho, porem sem sucesso:

    Dim ArrList As New ArrayList

            For Each cell As DataGridViewCell In dgvCheck.CurrentRow.Cells
                ArrList.Add(cell.Value.ToString)
            Next

            Dim form As New frmMainMenu
            form.dgvCheck.Rows.Add(ArrList.ToArray)

            'frmMainMenu.Show()
            Me.Hide()

    quarta-feira, 14 de fevereiro de 2018 02:15

Respostas

Todas as Respostas

  • Você precisa passar uma referência da instância atual do frmMainMenu para o form filho, se criar uma nova instância não estará atuando no form já aberto.

    Você pode passar pelo construtor da classe do form filho ou criar uma propriedade. Ex:

    public class frmMainMenu
    {
      public void AbrirFormFilho()
      {
        frmFilho form = new frmFilho(this);
        form.Show();
      }
    }
    
    public class frmFilho
    {
      private frmMainMenu _form;
    
      public frmFilho(frmMainMenu form)
      {
        _form = form;
      }
    
      public void BotaoVoltar()
      {
        // ...
        _form.grid.DataSource = algumDataSource;
      }
    }


    Juliano Nunes - http://linkedin.com/in/julianonunes

    Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.

    Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.

    quarta-feira, 14 de fevereiro de 2018 10:53
  • Ola Juliano,

    Obrigado, acabei resolvendo de uma outra maneira, mas obrigado.

    • Marcado como Resposta MRD2018 quinta-feira, 15 de fevereiro de 2018 18:15
    quinta-feira, 15 de fevereiro de 2018 18:15