C# - Как закрыть From и Application.Run - PullRequest
0 голосов
/ 28 марта 2020

Этот простой код предотвращает закрытие приложения

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        Thread TH = new Thread(Run);
        TH.Start();
    }

    void Run()
    {
        Application.Run();
    }

С другой стороны, я могу остановить это с помощью:

        Application.Exit();

Но это не работает, когда кнопка [X] нажата форма, отладка все еще работает, и вывод отладочной информации console дает мне это, в то время как форма фактически закрыта:

The thread 0x65c has exited with code 0 (0x0).
The thread 0x11c0 has exited with code 0 (0x0).

Любая идея, как на самом деле полностью остановить это с помощью [ X] кнопка?

1 Ответ

0 голосов
/ 28 марта 2020

Хорошо, мне удалось это исправить.

в Form1.Designer.cs внутри InitializeComponent()

это необходимо добавить

this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_Closing);

затем в Form1.cs

private void Form1_Closing(object sender, EventArgs e)
{
    Application.Exit();
}
...