是否有可能在启动应用程序的过程中阻止MainForm完全加载(不确定它的调用方式,组件初始化可能如何)?
我试过了:
public MainForm()
{
if (true)
{
Application.Exit();
return;
}
InitializeComponent();
}
和
public MainForm()
{
if (true)
{
this.Close();
Application.Exit();
return;
}
InitializeComponent();
}
没有“返回”;同样。
第一个实际上什么也没做,而第二个解决方案抛出“无法访问已处置的对象”。错误?
甚至可以在完全加载之前关闭整个应用程序吗?
为了说清楚我想在数据库连接问题时阻止应用程序加载。
答案 0 :(得分:9)
正如ho1所说,Environment.Exit
就是答案。例如:
public MainForm()
{
if (true)
{
Environment.Exit(0);
}
InitializeComponent();
}
如果if语句中的条件为true
,则会导致应用程序关闭。
答案 1 :(得分:8)
按照here所述尝试Environment.Exit
。
答案 2 :(得分:0)
我认为rob_g给出的答案是要走的路。在显示表单之前初始化和验证数据库是我认为最好的解决方案!您还可以从表单构造函数中删除不必要的逻辑,因为表单不应该真正关心数据库初始化。