环境:开发环境Visual Studio 2010 Login.cs是登陆窗口 Main.cs是程序主窗口
问题:一个WinForm程序登陆界面登陆成功后如何关闭登陆窗口显示主窗口?
经菜鸟我多番搜索和实践。由下面方法实现:
主要思想:程序运行后先打开登陆窗口,主窗体在登陆窗口Login.DialogoResult==DialogReesult.OK时运行主窗体
实现方法:
首先在解决方案管理器(Program.cs)里的代码
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form Login = new Login();
Login.ShowDialog();//显示登陆窗体
if (Login.DialogResult == DialogResult.OK)
Application.Run(new Main());//判断登陆成功时主进程显示主窗口
else return;
}
然后在登陆窗口(Login.cs)的登陆按钮(BTLogin)Click事件里:
private void BTLogin_Click(object sender, EventArgs e)
{
if (TBUserName.Text == "www.520360.com" && TBPassWord.Text == "123")
{
this.DialogResult = DialogResult.OK;//关键:设置登陆成功状态
this.Close();
}
else
{
MessageBox.Show("账号或密码错误,请重试");
}
}
运行测试OK!