Как предотвратить закрытие скрытой формы в C # - PullRequest
0 голосов
/ 21 марта 2011

Я хочу предотвратить закрытие формы в некоторых случаях. Я знаю использование OnFormClosing, но когда форма скрыта (Visible == false), метод OnFormClosing не вызывается. Есть ли способ перехватить закрытие формы в этом случае?

Изменить (некоторые подробности): Форма является дочерней в MdiParent, должна оставаться невидимой в фоновом режиме и ждать вызовов из другого потока (от Invoke).

MdiParent закрывает все дочерние окна, когда пользователь «отключается», в этом случае приведенная выше форма должна оставаться открытой, но невидимой и все еще ожидающей звонков. Когда MidParent закрывается, все формы должны закрываться.

Edit2 (нет решения?): Кажется, что нет никакого решения для этого. Мой обходной путь теперь состоит в том, чтобы исключить мою не закрываемую форму в коде MdiParent, который закрывает все другие формы.

1 Ответ

2 голосов
/ 22 марта 2011
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
                // This will cancel the event
                e.Cancel = true;
}

Независимо от причины, это эффективно остановит закрытие формы.

...