Calling Close
from the constructor of the Form is not possible, as it will call Dispose
on a Form that has not yet been created. To close the Form after construction, assign an anonymous event handler to the Load
event that closes your Form before it is displayed for the first time:
public partial class MyForm : Form
{
public MyForm()
{
if (ShouldClose())
{
Load += (s, e) => Close();
return;
}
// ...
}
// ...
}