Windows Forms: изменение главного окна приложения во время выполнения

Обычно я бы делал Application.Run(myMainForm).

Но я хочу сделать что-то вроде этого:

MyForm1 f = new MyForm1();
f.Close+=OnOpenOverviewWin();
Application.Run(f);

void OnOpenOverviewWin()
{
MyOverViewForm f = new MyOverViewForm ();
Application.Run(f); // i want to do this
Application.NewMainWindow = f; // or something like that
}

1 ответ

Решение

Установите для свойства Application.ShutdownMode значение ShutdownMode.OnLastWindowClose.

MyForm1 f = new MyForm1();
f.Close += OnOpenOverviewWin();
Application.ShutdownMode = ShutdownMode.OnLastWindowClose;
Application.Run(f);

void OnOpenOverviewWin()
{
  MyOverViewForm f = new MyOverViewForm ();
  f.Show();
}
Другие вопросы по тегам