6

C# Windows フォームを使用して簡単なアプリを開発しています。メインフォームは別のフォームを開きますが、両方のフォームは必要ありません。2 番目のフォームが開いたときに最初のフォームが閉じられるようにします。最初のフォームがメインの使用であるため

    this.Close();

2番目のフォームを表示した後、両方を閉じます。だから私は代わりにこれを使った

    private void btnSubmit_Click(object sender, EventArgs e)
    {
         frmData QS = new frmData();
         QS.Show();
         this.WindowState = FormWindowState.Minimized;
         this.ShowInTaskbar = false;
    }

    private void frmData_FormClosed(object sender, FormClosedEventArgs e)
    {
        Application.Exit();
    }

これを行う他の方法があるかどうか知りたいです。

どんな助けでも大歓迎です。

4

3 に答える 3

11

メイン フォームを引数として に渡さないでくださいApplication.Run

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);

MainForm frmMain = new MainForm();
frmMain.Show();

Application.Run();

したがって、別のフォームを表示するときに閉じることができます。

private void btnSubmit_Click(object sender, EventArgs e)
{
     frmData QS = new frmData();
     QS.Show();
     this.Close();
}

アプリケーションを閉じるには、使用する必要があります

Application.Exit();
于 2013-07-23T21:07:05.907 に答える
3

最初のフォームを非表示にします。

private void btnSubmit_Click(object sender, EventArgs e)
{
     frmData QS = new frmData();
     QS.Show();
     this.Hide();
}

private void frmData_FormClosed(object sender, FormClosedEventArgs e)
{
    Application.Exit();
}
于 2013-07-23T21:03:25.773 に答える