Maison >développement back-end >C++ >Comment ouvrir correctement un nouveau formulaire et fermer le formulaire actuel en C# ?
Comment ouvrir un nouveau formulaire et fermer le formulaire actuel en C#
Lors du développement d'applications C#, vous pouvez rencontrer des situations où vous devez ouvrez un nouveau formulaire à partir d'un bouton du formulaire actuel, fermez le formulaire actuel et concentrez-vous sur le formulaire nouvellement ouvert. Voici comment y parvenir :
Solution de Steve
Une approche courante consiste à utiliser le code suivant :
private void Button1_Click(object sender, EventArgs e) { var form2 = new Form2(); form2.Show(); this.Close(); }
Cependant, cette solution a un défaut. Lorsque this.Close() est appelé, le formulaire actuel et le formulaire nouvellement ouvert (form2) sont supprimés. Pour éviter cela, vous devriez envisager de masquer le formulaire actuel au lieu de le fermer.
Solution corrigée
Pour ouvrir un nouveau formulaire et fermer le formulaire actuel, utilisez ce qui suit code :
private void OnButton1Click(object sender, EventArgs e) { this.Hide(); var form2 = new Form2(); form2.Closed += (s, args) => this.Close(); form2.Show(); }
Dans cette solution corrigée :
Cette approche garantit que le nouveau formulaire (Form2) est ouvert et focalisé, tandis que le formulaire actuel (Form1) est masqué puis fermé.
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!