FormClosing в c # - PullRequest
       10

FormClosing в c #

2 голосов
/ 31 октября 2011

Добрый день, переполнение стека.Моя проблема здесь в том, что функция закрытия формы не реализуется сразу после закрытия формы.Но если я закрою форму и снова открою ее, а затем снова закрою, будет выполнена функция Close_Form.Как я могу сделать это таким образом, чтобы после компиляции и запуска программы я мог сразу использовать метод close form?Пожалуйста, помогите. Tnx

private Form2 ins = new Form2();

private void userManageLink_Click(object sender, EventArgs e)
    {


        ins.ShowDialog();

        ins.FormClosing += new System.Windows.Forms.FormClosingEventHandler(Close_Form);

    }

    private void Close_Form(object sender, EventArgs e)
    {

        MessageBox.Show("Hello World");

    }

Ответы [ 2 ]

6 голосов
/ 31 октября 2011

Переместите присвоение обработчика события на перед вызовом ShowDialog ().Как только вы вызываете ShowDialog (), он не возвращается, пока форма не будет закрыта.К тому времени нет смысла устанавливать обработчик событий, потому что форма уже закрыта и событие не будет запущено.

1 голос
/ 31 октября 2011

Возможно, проблема в том, что вы добавляете обработчик FormClosing после вызова ShowDialog.Диалог отображается, вы закрываете его, затем добавляете обработчик.Попробуйте добавить обработчик перед вызовом ShowDialog.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...