[C#] Passar informações da Form2 para a Form1

orien

Portugal@Home Member
Boas pessoal... tenho feito imensas pesquisas de como fazer isto mas nao consigo por em pratica :(


E o seguinte. Eu tenho 2 forms, na Form1 tenho 5 textbox que e para receber 5 numeros e Tenho um botao na form1 que chama a form2 que tem varioes botoes com numeros, cada um desses numeros declara um valor para uma variavel global dentro da form2.

Dentro da mesma form2 tenho:
Código:
/*Form2*/
 
[SIZE=2][COLOR=#0000ff]public[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]void[/COLOR][/SIZE][SIZE=2] marcartexto()[/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2]string texto = Convert.ToString(numero);[/SIZE]
 
[SIZE=2]}[/SIZE]
[SIZE=2][COLOR=#0000ff]private[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]void[/COLOR][/SIZE][SIZE=2] button1_Click([/SIZE][SIZE=2][COLOR=#0000ff]object[/COLOR][/SIZE][SIZE=2] sender, [/SIZE][SIZE=2][COLOR=#2b91af]EventArgs[/COLOR][/SIZE][SIZE=2] e)[/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2]numero = 1;[/SIZE]
 
[SIZE=2]marcartexto(numero);[/SIZE]
[SIZE=2]}[/SIZE]

Eu dentro do private void marcartexto queria por um codigo que desse para mandar a variavel "texto" para a textbox da form1.

...

Na class da form1 tenho isto:
Código:
/*Form1*/
[SIZE=2][COLOR=#0000ff]public[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]string[/COLOR][/SIZE][SIZE=2] texto[/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000ff]get[/COLOR][/SIZE][SIZE=2] { [/SIZE][SIZE=2][COLOR=#0000ff]return[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]this[/COLOR][/SIZE][SIZE=2].textBox1.Text; }[/SIZE]
[SIZE=2][COLOR=#0000ff]set[/COLOR][/SIZE][SIZE=2] { [/SIZE][SIZE=2][COLOR=#0000ff]this[/COLOR][/SIZE][SIZE=2].textBox1.Text = [/SIZE][SIZE=2][COLOR=#0000ff]value[/COLOR][/SIZE][SIZE=2]; }[/SIZE]
[SIZE=2]}[/SIZE]

Mas eu nao consigo usar isto na form2 por exemplo...
Código:
/*Form2*/
form1.textbox1.text = texto;


Será que alguem me pode ajudar?


Obrigado,

Orien
 
Última edição:
A solução é simples... Quando crias o form2 passas no construtor uma referência para o form1 ou seja

Form1
Código:
public partial class Form1 : Form
    {
        private Form f;

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            f = new Form2(textBox1.Text);
            f.Show();
        }
    }
Código Form2
Código:
public partial class Form2 : Form
    {


        public Form2(string txt)
        {
            InitializeComponent();

            textBox1.Text = txt;
        }

        



        private void Form2_Load(object sender, EventArgs e)
        {

        }
    }
Neste Caso até só passei o valor da caixa de texto para dentro do form2 e voltei a apresentá-lo dentro de uma caixa de texto.
 
Última edição:
Back
Topo