Sto lottando per capire come passare i valori tra le forme. Ho quattro moduli e voglio passare le informazioni recuperate dallo Login
alla quarta e ultima forma.Passaggio di valori tra Windows Form C#
Questo è quello che ho finora.
In questa funzione:
private void btnLogin_Click(object sender, EventArgs e)
ho deserializzati i dati che voglio in questo modo:
NewDataSet resultingMessage = (NewDataSet)serializer.Deserialize(rdr);
Poi, quando chiamo il modulo successivo ho fatto questo:
Form myFrm = new frmVoiceOver(resultingMessage);
myFrm.Show();
Quindi, il mio modulo VoiceOver
si presenta così:
Quando eseguo il debug, è possibile vedere i dati nel loginData
nel secondo modulo, ma non riesco ad accedervi nell'evento btnVoiceOverNo_Click
. Come posso accedervi così posso passarlo al modulo successivo?
È necessario un membro di frmVoiceOver a cui si passa loginData. Qualcosa come _loginData = loginData, dove _loginData esiste nella classe form come NewDataSet _loginData. –
possibile duplicato di [passaggio di valori tra moduli (winforms)] (http://stackoverflow.com/questions/3062575/passing-values-between-forms-winforms) –
Il login e i moduli appartengono alla stessa applicazione (exe)? Se è così, non c'è bisogno di serializzazione/deserializzazione: le buone vecchie proprietà semplici funzioneranno. Sembra anche che la logica "pull" (le forme chiedono Login per le informazioni) sia migliore qui della logica "push" quando Login invia i dati nei moduli. –