none
Transferência de valor de textBox entre formulários RRS feed

  • Pergunta

  • Boa tarde.

    Preciso transferir o texto do Form2 para o Form1.

    A situação é que o Form 2 é aberto pelo Form1, através de um botão click.

    A minha dúvida é: como faço para transferir o texto de um textbox localizado no Form2 para um textbox localizado no Form1 (que encontra-se aberto em segundo plano) sem usar "Form1.Show()" (não pode abrir novamente o Form1 pois já tenho outras informações nele digitadas).

    Fico no aguardo...

    Abraço.

    sexta-feira, 17 de março de 2017 21:28

Respostas

  • Achei a solução. Pra quem também tinha a mesma dúvida que eu, nesse link tem tudo explicado.

    http://www.linhadecodigo.com.br/artigo/1741/trocando-informacoes-entre-windows-forms-em-csharp.aspx

    domingo, 19 de março de 2017 00:54

Todas as Respostas

  • Olá, você pode tentar dessa forma: 

    // textbox do form1
                textBox1.Text = "Texto do form 1";
    
                // crio uma instância do form2
                var form2 = new Form2();
    
                // pego o textbox do form2
                TextBox textboxForm2 = form2.Controls.Find("textbox1", true)[0] as TextBox;
    
                // altero o valor do textbox no form2
                textboxForm2.Text = textBox1.Text;


    João Paulo Gomes

    sexta-feira, 17 de março de 2017 21:52
  • Olá, você pode tentar dessa forma: 

    // textbox do form1
                textBox1.Text = "Texto do form 1";
    
                // crio uma instância do form2
                var form2 = new Form2();
    
                // pego o textbox do form2
                TextBox textboxForm2 = form2.Controls.Find("textbox1", true)[0] as TextBox;
    
                // altero o valor do textbox no form2
                textboxForm2.Text = textBox1.Text;


    João Paulo Gomes

    Cara, eu não entendi muito bem a tua sugestão...
    sexta-feira, 17 de março de 2017 22:15
  • O que eu fiz foi criar dois forms e passar o valor do textbox de um para o outro, sem exibir o outro formulário.

    Crie um projeto Windows Forms com dois Formulários, adicione um TextBox em cada formulário e cola esse conteúdo no Form1_Load, assim você vai ver funcionando e vai entender melhor.



    João Paulo Gomes

    sexta-feira, 17 de março de 2017 22:57
  • O que eu fiz foi criar dois forms e passar o valor do textbox de um para o outro, sem exibir o outro formulário.

    Crie um projeto Windows Forms com dois Formulários, adicione um TextBox em cada formulário e cola esse conteúdo no Form1_Load, assim você vai ver funcionando e vai entender melhor.



    João Paulo Gomes

    Já testei a tua sugestão, sem sucesso. Essa é a situação:

    Form1

    Form2

    Quando clicar no botão "Enviar para Form1", o texto digitado no textBox desse form vai para o textBox do Form1, e se mantém lá mesmo fechando o Form2.

    • Editado RBVA sábado, 18 de março de 2017 01:13
    sábado, 18 de março de 2017 01:01
  • Achei a solução. Pra quem também tinha a mesma dúvida que eu, nesse link tem tudo explicado.

    http://www.linhadecodigo.com.br/artigo/1741/trocando-informacoes-entre-windows-forms-em-csharp.aspx

    domingo, 19 de março de 2017 00:54