0

有人在这里问了一个非常相似的问题C# Application.Run without Form

但检查的答案不适合我。

我想做的是:

static void Main()
{
     Application.EnableVisualStyles();
     Application.SetCompatibleTextRenderingDefault(false);
     ObjController objController = new ObjController();
     Application.Run();
     Application.Exit();
}

class ObjController
{

    Form1 form1 = new Form1();       

    public Form1 showObj()
    {
        form1.Show();
        return new Form1();        
    }
}

但是当关闭表单Application.Exit()main()似乎没有执行。为什么 ?我能做什么呢?

4

1 回答 1

1

您将需要“收听” FormClosed 事件并在那里调用 Application.Exit() :

class ObjController
    {

        Form1 form1 = new Form1();


        public Form1 showObj()
        {
            form1.FormClosed += form1_FormClosed;

            form1.Show();
            return new Form1();

        }

        void form1_FormClosed(object sender, FormClosedEventArgs e)
        {
            Application.Exit();
        }
    }
于 2013-02-16T19:35:18.740 回答