Comment ouvrir un nouveau formulaire et fermer celui actuel en C#
Lors de la création d'applications avec plusieurs formulaires, il est courant de devoir ouvrir un nouveau formulaire en fermant celui en cours. Voici une solution :
L'approche initiale de Steve consistant à appeler this.Close() pour fermer le formulaire actuel ne fonctionne pas car elle supprime également le nouveau formulaire. Pour éviter cela, la solution de Steve peut être modifiée pour masquer le formulaire actuel et gérer l'événement Closed du nouveau formulaire pour appeler this.Close.
Solution modifiée :
private void OnButton1Click(object sender, EventArgs e) { // Hide the current form instead of closing it. this.Hide(); // Create a new instance of form2. var form2 = new Form2(); // Subscribe to the Closed event of form2. form2.Closed += (s, args) => this.Close(); // Show the new form. form2.Show(); }
Cette solution garantit que le nouveau formulaire est affiché et que le formulaire actuel est fermé une fois le nouveau formulaire fermé. Il offre un meilleur contrôle sur le cycle de vie des formulaires et permet une transition transparente entre les formulaires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!