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