我正在使用C#winforms。

我有CS文件中存在的功能Validate()。当我调用函数Validate()时,它使用打开错误窗体

ErrorForm ew = new ErrorForm(Errors); // Errors is list<string>
ew.Show();


但是,当我再次调用它时,会打开一个新窗口,并且我的上一个窗口也已打开。我必须手动关闭该窗口。

是否有可用的方法,使得如果我再次调用validate(),它将关闭当前的ErrorForm,并打开新的ErrorForm

最佳答案

试试这个:

var f1=Application.OpenForms["ErrorForm"];
if(f1!=null)
  f1.Close();

f1=  new ErrorForm(Errors);
f1.Show();

10-06 12:43