Takže povedzme, že som klikol na tlačidlo a mal by otvoriť nový formulár a zatvoriť aktuálny formulár.
private void button1_Click(object sender, EventArgs e)
{
this.Close();
Form2 AFormInstance = new Form2();
AFormInstance.Show();
}
skúsil som this.Close()
ale to, čo sa skončilo, sa obe formy uzavreli. Ako sa otvorím Form2
a zavrieť Form1
?
odpovede:
0 pre odpoveď č. 1Ak rodičom tlačidla 1 je Form1, môžete použiť:
var formToBeClosed = ((sender as Button).Parent) as Form;
formToBeClosed.Close();
-2 pre odpoveď č. 2
Jednoducho prepnite niektoré riadky:
private void button1_Click(object sender, EventArgs e)
{
Form2 AFormInstance = new Form2();
AFormInstance.Show();
this.Close();
}
Upraviť: Ďalšia myšlienka: Neúmyselne zatvárate hlavný formulár?
Zmeňte predvolený kód program.cs na:
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form1 form1 = new Form1();
form1.Show();
Application.Run();
}
Na zatvorenie aplikácie použite:
Application.Exit();