C#如何禁止重复显示同一个窗体
6个回答
展开全部
主窗体:(假设叫做Form1)
public static Form2 f2;//声明窗体类静态变量
private void Button1_Click(object sender, EventArgs e)
{
if (f2 == null)
{
f2 = new Form2();//将主窗体对象传递过去
f2.Show();//显示窗体二
}
else
{
f2.Activate();
}
}
Form2子窗体:
//子窗体的关闭事件
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
Form1.f2 = null;
}
public static Form2 f2;//声明窗体类静态变量
private void Button1_Click(object sender, EventArgs e)
{
if (f2 == null)
{
f2 = new Form2();//将主窗体对象传递过去
f2.Show();//显示窗体二
}
else
{
f2.Activate();
}
}
Form2子窗体:
//子窗体的关闭事件
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
Form1.f2 = null;
}
展开全部
假定:你的窗体名称为:Form1
foreach (Form form in this.MdiChildren)
{
if (form.GetType() == typeof(Form1))
{
form.Focus();
return;
}
}
Form1 f = new Form1();
f.MdiParent = this;
f.Show();
这样就OK了!
foreach (Form form in this.MdiChildren)
{
if (form.GetType() == typeof(Form1))
{
form.Focus();
return;
}
}
Form1 f = new Form1();
f.MdiParent = this;
f.Show();
这样就OK了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1把那个winform做成模态的 没有点确定or取消不能做别的
2winform Form1_Load()里判断上一个是不是还在 在就message。show(“以存在”);然后返回or退出
2winform Form1_Load()里判断上一个是不是还在 在就message。show(“以存在”);然后返回or退出
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你在点击的时候 判断一下你点击的窗体是否处于显示状态就哦了呗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
frm.showdialog();
//如此来,在这个窗口未关闭之前,休想再次打开其他
//简单明了,接分!
//如此来,在这个窗口未关闭之前,休想再次打开其他
//简单明了,接分!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询