我在Form1中点击按钮时打开Form2:Form2 f2 = new Form2()
在Form2已经打开的情况下,再次单击Form1上的按钮会显示已打开的Form2。但我希望Form2在打开时不应该打开。
当Form2关闭时,再次单击该按钮时,它应显示Form2(因为Form2已关闭,即没有运行它的实例)。
如何做到这一点?
编辑: 我希望Form2在打开时不应该打开。
答案 0 :(得分:2)
您还可以使用Application.OpenForms属性返回所有打开的窗体窗体的集合。您可以搜索此集合以查看Form1(或Form2)当前是否已打开。
答案 1 :(得分:1)
除了SLaks的答案,请检查表格。也请点击,以便
void Something() {
if (form == null || form.IsDisposed)
form = new OtherForm();
form.Show();
}
我也发现form.Activate()有用,这样你就可以获得表格中的焦点
答案 2 :(得分:0)
您需要以第一种形式创建一个字段,该字段包含第二种形式的现有实例。
例如:
OtherForm form;
void Something() {
if (form == null)
form = new OtherForm();
form.Show();
}
答案 3 :(得分:0)