Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [c#] recupero valore di un altro form
Forum - C# / VB.NET - [c#] recupero valore di un altro form

Avatar
file001 (Normal User)
Rookie


Messaggi: 32
Iscritto: 18/06/2013

Segnala al moderatore
Postato alle 22:28
Venerdì, 23/10/2015
Salve a tutti,

ho un piccolo problemino che spero di risolvere...
Ho un form (form1) con una textBox e un Button. il valore che ho impostato nella textBox è 1.

Poi, ho creato un altro Form (form2).

Quando clicco il Button del form1, si deve aprire il form2 con un MessageBox che deve mostrare il valore della textBox che nel frattempo è stato modificato; mi spiego meglio scrivendo il codice:

nel Button ho inserito per aprire il form

Codice sorgente - presumibilmente C# / VB.NET

  1. Form2 f = new Form2();
  2. f.Show();



Nel form2_load invece questo:

Codice sorgente - presumibilmente Plain Text

  1. form1.textBox1.Text = "2";
  2. messageBox.Show(form1.textBox1.Text);



il valore che mi dovrebbe apparire è il 2 perchè l'ho cambiato ma in realtà mi appare l'1 8-| 8-|

Come posso risolvere?

Ultima modifica effettuata da file001 il 23/10/2015 alle 22:30


pierotofy.it
PM Quote
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1455
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 23:00
Venerdì, 23/10/2015
Crea un nuovo costruttore per form2 e passagli quello che ti serve, oppure rendi pubblico il controllo di interesse su form2

PM Quote
Avatar
file001 (Normal User)
Rookie


Messaggi: 32
Iscritto: 18/06/2013

Segnala al moderatore
Postato alle 14:14
Sabato, 24/10/2015
Ciao, grazie per la risposta

ho provato ma ancora niente


pierotofy.it
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 15:01
Sabato, 24/10/2015
Testo quotato

Postato originariamente da file001:

ho provato



Ma cosa hai provato? Facci vedere come hai provato a mettere in pratica il suggerimento ...



Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
Ultimo (Member)
Expert


Messaggi: 513
Iscritto: 22/05/2010

Segnala al moderatore
Postato alle 18:43
Sabato, 24/10/2015


    Form2 f = new Form2();
    f.Show();


questa parte mi fa uscire di testa, non ne capisco il senso ;)


Ultimo (Hai voluto la bicicletta ? ....)

Studiare LINQ, WPF, ASP.NET MVC, Entity Framwork, C#, Blend, XAML, Javascript, HTML5, CSS .....(tanta roba)

https://www.dropbox.com/s/c2aots5x4urgbhf/setup_game_sudoku ...
PM Quote
Avatar
file001 (Normal User)
Rookie


Messaggi: 32
Iscritto: 18/06/2013

Segnala al moderatore
Postato alle 20:22
Sabato, 24/10/2015
Testo quotato

Postato originariamente da nessuno:

Testo quotato

Postato originariamente da file001:

ho provato



Ma cosa hai provato? Facci vedere come hai provato a mettere in pratica il suggerimento ...




ho provato a inserire un'altra textBox ma niente quindi ho dovuto solo cambiare il nome della textBox nel codice in questo modo:

Codice sorgente - presumibilmente C# / VB.NET

  1. textBox2.text = textBox1.text
  2. Form2 f = new Form2();
  3. f.Show();



per quanto riguarda il secondo metodo avevo già provato infatti per scrivere form1.textBox1.Text ho dovuto rendere pubblica la textBox

Testo quotato

Postato originariamente da Ultimo:



    Form2 f = new Form2();
    f.Show();


questa parte mi fa uscire di testa, non ne capisco il senso ;)



in questo modo apro il form2 e il form2 poi visualizza la Texbox del form1


pierotofy.it
PM Quote
Avatar
gigisoft (Member)
Guru


Messaggi: 695
Iscritto: 11/10/2008

Segnala al moderatore
Postato alle 9:30
Martedì, 27/10/2015
Testo quotato

Postato originariamente da file001:

Salve a tutti,

ho un piccolo problemino che spero di risolvere...
Ho un form (form1) con una textBox e un Button. il valore che ho impostato nella textBox è 1.

Poi, ho creato un altro Form (form2).

Quando clicco il Button del form1, si deve aprire il form2 con un MessageBox che deve mostrare il valore della textBox che nel frattempo è stato modificato; mi spiego meglio scrivendo il codice:

nel Button ho inserito per aprire il form

Codice sorgente - presumibilmente C# / VB.NET

  1. Form2 f = new Form2();
  2. f.Show();



Nel form2_load invece questo:

Codice sorgente - presumibilmente Plain Text

  1. form1.textBox1.Text = "2";
  2. messageBox.Show(form1.textBox1.Text);



il valore che mi dovrebbe apparire è il 2 perchè l'ho cambiato ma in realtà mi appare l'1 8-| 8-|

Come posso risolvere?



Il problema è che quando mostri manualmente un form, quest'ultimo non ha visibilità dell'oggetto che l'ha chiamato (in questo caso form1)

puoi inserire in f un campo pubblico in cui metterai il riferimento alla textbox a cui f deve accedere:

Codice sorgente - presumibilmente C# / VB.NET

  1. // In form2 dichiarerai un campo T di tipo textbox, e poi in form1
  2.  
  3. Form2 f = new Form2();
  4. f.T = textBox1;
  5. f.Show();



dopodiché in f, accedendo a T, si accederà implicitamente a textBox1.

Ciao. :k:

Luigi.

Ultima modifica effettuata da gigisoft il 27/10/2015 alle 9:31


Le cose si fanno per bene o non si fanno affatto
PM Quote
Avatar
file001 (Normal User)
Rookie


Messaggi: 32
Iscritto: 18/06/2013

Segnala al moderatore
Postato alle 15:20
Giovedì, 29/10/2015
Grazie ho risolto


pierotofy.it
PM Quote