如果表单已经打开,我需要关注表单,否则我想打开新表单.
我已经尝试过这段代码来解决我的问题,但它打开了新的表单,而不是关注已打开的表单.
foreach (var item in Application.OpenForms)
{
Form form1 = item as Form ;
if (form1 != null)
{
form1.Activate();
break;
}
else
{
form1 = new Form ();
form1.Show();
break;
}
}
Run Code Online (Sandbox Code Playgroud)
我的猜测是问题是你实际上只是在看第一种形式 - 你在break声明的两个部分都有一个if声明......而你也只是使用了Form几乎肯定不合适的一般类型.你可能想要:
var form = Application.OpenForms.OfType<MyForm>().FirstOrDefault();
if (form != null)
{
form.Activate();
}
else
{
new MyForm().Show();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2510 次 |
| 最近记录: |