private void btn_submit_Click(object sender, EventArgs e) { try { SqlConnection con = new ConnectSQL().getSQLCon(); string sql = "select * from userinfo where username='" + this.txt_NserName.Text + "'"; SqlCommand cmd = new SqlCommand(sql, con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { if (dr["password"].ToString() == this.txt_pwd.Text) { //MainForm mainform = new MainForm(); //UserInfo user = new UserInfo(); UserInfo.email = dr["email"].ToString(); UserInfo.nickname = dr["nickname"].ToString(); UserInfo.state = dr["state"].ToString(); UserInfo.username = dr["username"].ToString(); UserInfo.userimage = dr["userimage"].ToString(); UserInfo.uid = int.Parse(dr["uid"].ToString()); //mainform.user = user; this.DialogResult = DialogResult.OK; //this.Close(); //this.Visible = false; // mainform.Show(); } else { MessageBox.Show("密码错误!"); } dr.Dispose(); con.Close(); } else { if (this.txt_NserName.Text == "") { MessageBox.Show("请输入信息"); } else { MessageBox.Show("该用户名不存在"); } dr.Dispose(); con.Close(); } } catch (Exception ex) { MessageBox.Show("点击按钮事件异常:/n"+ex.ToString() 以上代码是登录按钮的事件 对于登录后怎么关闭的登录窗口的代码如下,其中要注明的是userinfo是个静态类,用来存储用户的信息,以带到主窗体中去 [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); LoginForm login = new LoginForm(); login.ShowDialog(); if (login.DialogResult == DialogResult.OK) { Application.Run(new MainForm()); } }