C#怎么让窗体只SHOW一次

来源:百度知道 编辑:UC知道 时间:2024/05/25 21:38:54
当我show了一个窗体A出来后,然后又show了一个B窗体,这时候我再点show A的那个窗体按钮,这时候我是想让如果A已经show出来了就直接激活显示他,而不是又另外new一个show

判断条件问题,判断form1是否已经有实例存在,如果有则激活窗体,如果没有则创建窗体即可。

private void button1_Click(object sender, EventArgs e)
{
//点击按钮的时候只会显示一个窗体
bool opened = false;
foreach (Form f1 in Application.OpenForms)
{
if (f1 is Form2)
{
opened = true;
break;
}
}
if (!opened)
{
Form2 f2 = new Form2();
f2.Show();
}
}
不会有错的,你试一下?

用父容器吧...容器可以是一个窗体,也可以是一个容器控件.

这涉及设计模式,我都忘了怎么写了,你可以搜下c#单例模式。。。。

可以判断A的Visible属性,如果为false,则显示,如果为TRUE,不显示