方法一
Form _frm = Application.OpenForms["窗体的名"]; //查找是否打开过窗体
if ((_frm == null) || (_frm.IsDisposed)) //如果没有打开过
{
FormName frm = new FormName();//创建窗体
frm.ShowDialog();
}
else
{
_frm.Activate();
_frm.WindowState = FormWindowState.Normal;
}
方法二
const int WM_CLOSE = 0x10; //关闭
IntPtr Window_Handle = (IntPtr)FindWindow(null, "窗体的标题");
if (Window_Handle != IntPtr.Zero) //找到窗体关闭
{
PostMessageW(Window_Handle, WM_CLOSE, 0, 0); //关闭窗体
}
//再打开窗体