我是.net的新手。我需要帮助。 我有2个表单,一个表单有逻辑,第二个表单有登录部分。我想先运行第二个(登录)表单。我是通过编写代码Application.Run(new Sign_in());在第一个表单构造函数中。我的第二个表单首先出现,但是当我在单击Closed图标(RED Cross图标)后关闭Login表单时,我的第一个逻辑数据表单正在加载。我不想加载我的第一个表单在任何条件下登录。 我该怎么办? 感谢
答案 0 :(得分:2)
在表单的构造函数中运行表单通常会很糟糕。我会将这些分开,即在Main()
方法
bool loggedIn = false;
using(var loginForm = new SignInForm()) {
if(loginForm.ShowDialog() == DialogResult.OK) {
loggedIn = true; // plus whatever else you need; maybe a "Principal"
}
}
if(loggedIn) {
using(var mainForm = new SomeOtherForm()) {
Application.Run(mainForm);
}
}
您还可以更改登录表单以正确设置DialogResult
。
答案 1 :(得分:0)
而不是致电LoginForm.Close()
,请致电LogicForm.Show()
,然后致电LoginForm.Hide()