2014-03-13 2 views
0

У меня есть главная форма и 3 другие формы в моем приложении и процедуры программы следует следующим образом:Закрытие несколько скрытых форм - C#

1.) На главной форме пользователь нажимает на кнопку, которая запускает другой, где он может выбрать дату (ы)

2.) Затем другая форма запускает где он выбирает аа интервал времени и кучу других вещей

3.) Наконец, третья форма запускаемых и здесь пользователь управляет сеансом, который он выбрал в предыдущих формах. Если пользователь сделал это, он отжимает назад, который приносит предыдущую форму (выберите временной интервал и т. Д.), А затем он может выбрать другой временной интервал, и третья форма будет показана снова и так далее.

4.) Если пользователь выполнен, он может вернуться к двум формам и выбрать другую дату или вернуться к основной форме (3) и в главном меню.

Однако, если пользователь хочет вернуться к основной форме непосредственно из третьей формы, как это сделать? как закрыть другие 2 открытых формы, которые только скрыты, а не закрыты?

ответ

1

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

private void btn_Finish(args...) 
{ 
    form1.CloseAll(); 
    form2.CloseAll(); 
    form3.CloseAll(); 
    // Only if the main form is closed/Invisible 
    MainForm.Show() 
    // OR 
    MainForm.Visible = true; 
} 

И на каждой форме:

public static void CloseAll(); 
{ 
    this.Close(); 
} 
+0

на самом деле вам не нужно будет 'form1.CloseAll()' на 'form1', что будет просто' CloseAll'. То же самое для всех остальных. – Ben

+0

"статические" и "это" ?? – michaelAngelo

Смежные вопросы