Самый простой способ - создать новый экземпляр формы и закрыть старый.Это требует небольшой операции, если это основная форма вашего приложения, закрытие которой приведет к прекращению работы программы.Начните с открытия Program.cs и измените его так, чтобы он выглядел следующим образом:
static class Program {
[STAThread]
static void Main() {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
AppContext = new ApplicationContext();
AppContext.MainForm = new Form1();
Application.Run(AppContext);
}
public static ApplicationContext AppContext;
}
Переменная ApplicationContext теперь контролирует время жизни приложения, а не экземпляра Form1.Вы можете воссоздать форму с таким кодом в Form1:
private void button1_Click(object sender, EventArgs e) {
Form1 frm = new Form1();
frm.StartPosition = FormStartPosition.Manual;
frm.Location = this.Location;
frm.Size = this.Size;
Program.AppContext.MainForm = frm;
frm.Show();
this.Close();
}