|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2009
Città: Mercogliano (AV)
Messaggi: 602
|
[C#] Gestione chiusura finestre
Salve, mi trovo avanti ad un picclo problema, poiché sto imparando passo per passo questo linguaggio. Vorrei capire come gestire l'evento di chiusura di una finestra.
Ovvero il mio scopo è questo: Ho una schermata A di "pagina inziale", voglio che alla chiusura della finestra B, aperta tramite un menu nella schermata A, si riapra la schermata inziale A. Come dovrei muovermi ?
__________________
Codice:
Trattative Positive davidep85 (2 trattative), Xio, daniele_carrrr, The plex, gRo87, orochi, oro125, DREADMANWALKING, g0ldf3n1x, neongio, luka734, Sinister, Ch3f, m1kele, Thebaro, Maverick_Selection, Gabba88, nicola1283. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 485
|
Puoi gestire l'evento formClosed del form B per far ricomparire il form A (per esempio impostando la proprieta Visible a True).
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Jul 2009
Messaggi: 146
|
Puoi usare gli User Control .
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
|
Meglio partire con ordine... Quali librerie grafiche usi? wpf o windows form? (la metro ui l'escludo a priori visto che parli di finestre).
Altro particolare, la finestra A, una volta che la finestra B viene aperta che fine fa? E in ultima, la finestra B è modale oppure no? Alcune info che ti ho chiesto possono servire come no, ma è per avere una visione di insieme del problema. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2009
Città: Mercogliano (AV)
Messaggi: 602
|
La libreria grafica scelta è window form, mentre la finestra A non si chiude ma diventa invisibile per far posto alla finestra B.
Allora diciamo che nella schermata A c'è una un intestazione con una presentazione e 4 riquadri cliccabili per accedere a 4 aree diverse del software. la finestra B è quella finestra dove si sviluppa poi tutto il software.
__________________
Codice:
Trattative Positive davidep85 (2 trattative), Xio, daniele_carrrr, The plex, gRo87, orochi, oro125, DREADMANWALKING, g0ldf3n1x, neongio, luka734, Sinister, Ch3f, m1kele, Thebaro, Maverick_Selection, Gabba88, nicola1283. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 485
|
Utilizzando le considerazioni (giuste e che avevo sottovaluat) di Kendall come:
ci sono due vie che dipendono se il form B è modale oppure no. Ti posso fare due esempi, ma che potrebbero non adattarsi al tuo codice. Se è modale (lo apri con il comando formB.ShowDialog) puoi fare qualcosa di simile a questo: Codice:
formA.Visible = false; formB.Showdialog(); formA.Visible = true; //questa istruzione viene eseguita solo alla chiusura di B Codice:
formA.Visible = false;
formB.FormClosed += delegate {formA.Visible = true;};
formB.Show();
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jan 2009
Città: Mercogliano (AV)
Messaggi: 602
|
Ottimo ragazzi, vi ringrazio tutti, ho risolto con .Showdialog();
__________________
Codice:
Trattative Positive davidep85 (2 trattative), Xio, daniele_carrrr, The plex, gRo87, orochi, oro125, DREADMANWALKING, g0ldf3n1x, neongio, luka734, Sinister, Ch3f, m1kele, Thebaro, Maverick_Selection, Gabba88, nicola1283. |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
|
Ottimo. La via della finestra modale in effetti era, come hai potuto vedere dal codice di Dânêl, molto semplice e immediata. Nel caso delle non modali era comunque banale, ma richiedeva qualche considerazione in più.
Buona programmazione |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:05.




















