初学者问一个非常简单的问题 我想用C#做一个验证窗口,验证成功后需要登陆主窗体,然后关闭登陆窗口,我是用的新建项系统自建的窗体做登陆验证窗口,然后新建的一个windows窗口,但我一关闭整个系统就关闭了请问如何关闭了登陆窗口进入主窗体如:form1(登陆验证窗口)form2(主窗体)验证成功form1关闭加载form2谢谢。。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在form1上打开form2,form2是基于form1的,form1关了,程序就中断了楼主可以一开始就打开主窗口,只不过它不显示(visible=false),在主窗口上打开登陆窗口,登陆成功则关闭并显示主窗口 if(txtuser.Text.Trim()==""){MessageBox.Show("用户名不能为空!","注意",MessageBoxButtons.OK,MessageBoxIcon.Information);}else if(txtpwd.Text.Trim()==""){MessageBox.Show("密码不能为空!","注意",MessageBoxButtons.OK,MessageBoxIcon.Information);}else{if(i<2){string strcheck="select count(*) from userinfo where user=@Username and pwd=@Password";OleDbCommand cmd=new OleDbCommand(strcheck,con);cmd.Parameters.Add("@Username",System.Data.OleDb.OleDbType.VarChar,10);cmd.Parameters.Add("@Password",System.Data.OleDb.OleDbType.VarChar,10);cmd.Parameters["@Username"].Value=txtuser.Text.ToString().Trim();cmd.Parameters["@Password"].Value=conn.Encrypt(txtpwd.Text.ToString().Trim());//加密cmd.Connection.Open();int n=(int)cmd.ExecuteScalar();cmd.Connection.Close();cmd.Dispose();if(n!=0){//登录成功 this.Close();daybook InputForm =new daybook();//打开InputForm.ShowDialog();}else{MessageBox.Show("登录失败!请重新输入!","失败",MessageBoxButtons.OK,MessageBoxIcon.Warning);txtpwd.Text="";txtpwd.Focus();i++;}}else{MessageBox.Show("已超过三次!系统退出!","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);this.Close();}} if (_FrmLogin.DialogResult == DialogResult.OK) { FrmMain _FrmMain = new FrmMain(); Application.Run(_FrmMain); } this.Close();daybook InputForm =new daybook();//打开InputForm.ShowDialog();Close后还可以daybook InputForm =new daybook();//打开InputForm.ShowDialog();吗? 新建一个程序入口点文件,然后在此写入(当然要把主窗体中的Main()去掉)[STAThread]static void Main(){ loginForm = new Frm_Login(); loginForm.MessageSubmited += new EventHandler(HandleMessageSubmited); loginForm.ShowDialog(); Application.Run(mainForm);}static void HandleMessageSubmited(object sender, System.EventArgs e){ if (loginForm.DialogResult == DialogResult.Cancel) { CurrentProcess.Kill(); return; } if ( loginForm.UserName.Equals("") ) { MessageBox.Show("用户名不可为空,请重新输入用户名!","错误提示"); return; } ---判断程序--- if(验证成功) { loginForm.DialogResult = DialogResult.OK; }} } throw new NotImplementedException()是什么意思呢 求正则表达式 关于在C#中应用Ajax的问题 如何在安装软件时替换xp2系统内的配置文件??(紧急立即给分) 框架刷新问题 想在VS2005中C#代码编辑器中超链接,但是 自己制作了一个小登录组件(WinForm),但是将组件放在新窗体后,点击登录按钮后如何获取验证通过呢???? 怎样才能锁定DataGrid当前选中的一行!! 如何做电子桌面宠物 在程序中调用API??? FtpWebRequest显示中文文件名为乱码(急) 如何用treeview做资源管理器
{
MessageBox.Show("用户名不能为空!","注意",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
else if(txtpwd.Text.Trim()=="")
{
MessageBox.Show("密码不能为空!","注意",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
else
{
if(i<2)
{
string strcheck="select count(*) from userinfo where user=@Username and pwd=@Password";
OleDbCommand cmd=new OleDbCommand(strcheck,con);
cmd.Parameters.Add("@Username",System.Data.OleDb.OleDbType.VarChar,10);
cmd.Parameters.Add("@Password",System.Data.OleDb.OleDbType.VarChar,10);
cmd.Parameters["@Username"].Value=txtuser.Text.ToString().Trim();
cmd.Parameters["@Password"].Value=conn.Encrypt(txtpwd.Text.ToString().Trim());//加密
cmd.Connection.Open();
int n=(int)cmd.ExecuteScalar();
cmd.Connection.Close();
cmd.Dispose();
if(n!=0)
{
//登录成功
this.Close();
daybook InputForm =new daybook();//打开
InputForm.ShowDialog();
}
else
{
MessageBox.Show("登录失败!请重新输入!","失败",MessageBoxButtons.OK,MessageBoxIcon.Warning);
txtpwd.Text="";
txtpwd.Focus();
i++;
}
}
else
{
MessageBox.Show("已超过三次!系统退出!","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
this.Close();
}
}
{
FrmMain _FrmMain = new FrmMain();
Application.Run(_FrmMain);
}
daybook InputForm =new daybook();//打开
InputForm.ShowDialog();
Close后还可以
daybook InputForm =new daybook();//打开
InputForm.ShowDialog();
吗?
[STAThread]
static void Main()
{
loginForm = new Frm_Login();
loginForm.MessageSubmited += new EventHandler(HandleMessageSubmited);
loginForm.ShowDialog();
Application.Run(mainForm);
}static void HandleMessageSubmited(object sender, System.EventArgs e)
{
if (loginForm.DialogResult == DialogResult.Cancel)
{
CurrentProcess.Kill();
return;
}
if ( loginForm.UserName.Equals("") )
{
MessageBox.Show("用户名不可为空,请重新输入用户名!","错误提示");
return;
}
---判断程序---
if(验证成功)
{
loginForm.DialogResult = DialogResult.OK;
}
}
}