Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [VS 2010 WINFORM c#] utilizzo textbox

    Buonpomeriggio a tutti.
    mi trovo in difficoltà in scrittura da un form2 in una textbox del form1.
    Nel form1 ho questo codice:

    codice:
    private void button2_Click(object sender, EventArgs e)
    {
        Form2 f2 = new Form2();
        f2.Show();
    }
    nel form2 ho questo codice:
    codice:
     private void button1_Click(object sender, EventArgs e)
            {
                
                StreamWriter s = new StreamWriter("File.txt");
                pippo = textBox1.Text;
                s.Write(pippo);
                s.Close();
                Form1 f1 = new Form1();
                f1.textBox1.Text = pippo;
                this.Close();
            }
    solo che quando eseguo il bottone 1 del form2 non scrive niente nella texbox1 del form1.
    Perchè?
    Grazie in anticipo!

  2. #2
    Scrivendo
    codice:
    Form1 f1 = new Form1();
    crei una nuova istanza di Form1, mentre tu hai bisogno di riferirti all'istanza esistente.

    Puoi sfruttare la proprietà Owner del Form2, in questo modo:
    codice:
    //nel Form1
    Form2 f = new Form2();
    f.Show(this);   //passo il riferimento del Form1
    
    //nel Form2
    Form1 f = (Form1)this.Owner;
    f.textBox1.Text = pippo;
    Chi non cerca trova.

  3. #3
    Grazie mille per la tua risposta! dopo la domanda nel forum avevo trovato anche un altra soluzione, si doveva creare una nuova classe nel form2 che contiene una funzione che restituisci la variabile pippo e poi nel form1 creare un oggetto di quella classe e prendere il valore della var pippo. ma questa soluzione sembra molto meglio! grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.