2010-11-08 9 views
7

Ho due forme Form1 e Form2ottenere FORM indietro nascosta da un'altra forma

sto aprendo Form2 da Form1 su button_Click

Form2 obj2 = new Form2(); 
this.Visible = false; 
obj2.Show(); 

poi voglio tornare Form1 Visibile (in materia di smaltimento Form2) in stessi stati dei controlli sulle cui ho lasciato .....

risposta

16

Il tuo Form2 non sa nulla di Form1. Si avrà bisogno di un riferimento ad esso (si può fare con l'aggiunta di una proprietà Form tipo su Form2 e assegnare Form1 ad esso dopo la costruzione):

//In Form2 
public Form RefToForm1 { get; set;} 

//In Form1 
Form2 obj2 = new Form2(); 
obj2.RefToForm1 = this; 
this.Visible = false; 
obj2.Show(); 

//In Form2, where you need to show Form1: 
this.RefToForm1.Show(); 
+1

+1 per l'idea, personalmente vorrei passare il riferimento tramite il costruttore, ma questo è solo due diverse tonalità dello stesso colore. :) –

0

risposta di Oded funzionerà perfettamente bene, un'altra opzione con lo stesso risultato sia per esporre evento pubblico in Form2 chiamato ad esempio "AfterClose", invocarlo quando Form2 viene smaltimento e hanno Form1 aggiungere gestore di eventi in cui mostrarsi. Fatemi sapere se siete interessati e ti darò alcuni esempi di codice.

+0

vorrei knw hw 2 mostra forma nascosta allo stato attuale (se nascosta) da un altro modulo. –

Problemi correlati