我无法隐藏登录表单的主表单。用户登录后关闭登录表单并显示主表单。
我一直让自己很困惑,我已经删除了所有代码并重新开始。我可以很好地隐藏登录表单。
我无法隐藏调用的主窗体
Application.Run(new MainForm());
登录表单如下所示:
namespace WindowsFormsApplication1
{
public partial class LoginForm : Form
{
public LoginForm()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string username;
string password;
username = TB_username.Text;
password = TB_password.Text;
if (User.Login(username, password))
{
Globals._Login = true;
// Close login form
this.Dispose(false);
}
else
{
MessageBox.Show("Login Failed");
}
}
}
}
我不知道如何隐藏然后显示一次登录后的主表单。
谢谢,任何例子都会很棒
-
Use ShowDialog()
打开登录表单。那么你就不需要自己隐藏或禁用Mainform。事实上,如果您希望登录表单出现在应用程序的开头,请考虑在加载主表单之前显示它:
static void Main()
{
Application.SetCompatibleTextRenderingDefault(false);
Application.EnableVisualStyles();
DialogResult result;
using (var loginForm = new LoginForm())
result = loginForm.ShowDialog();
if (result == DialogResult.OK)
{
// login was successful
Application.Run(new Mainform());
}
}
-
在您的登录表单中,button1_Click
, use
DialogResult = DialogResult.OK;
关闭登录表单并传递OK
结果发送到Mainform。
没有必要Dispose()
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)