В момента изграждам приложение с интерфейс с множество документи, но имам проблем, когато дъщерните форми се затварят чрез бутона x. Когато формулярът е затворен, единственият начин да го покажете отново е да създадете нов екземпляр на този конкретен формуляр, което означава, че всички данни, съдържащи се в предишния формуляр, се губят.
Опитах се да настроя събитието за затваряне на формуляра просто да скрие формуляра, но след това, когато потребителят затвори основния родителски формуляр, приложението не излиза.
Има ли начин да се заобиколи това?
Ето кода, който в момента използвам за събитието за затваряне на формуляри на моите дъщерни форми:
private void ParameterForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason != CloseReason.FormOwnerClosing)
{
this.Hide();
e.Cancel = true;
}
}
С този код върху бутона x на главния формуляр трябва да се щракне два пъти, веднъж за затваряне на дъщерния формуляр и веднъж за затваряне на основния формуляр.