回 帖 发 新 帖 刷新版面

主题:登陆验证的问题!

User表有列UserID,Password

下面是我的验证代码:

loginAdapter.Fill(loginDataSet);
int i,j;
j=loginDataSet.Tables[0].Rows.Count;
for(i=0;i<j;i++)
{
    if(txtUserID.Text.Trim()==loginDataSet.Tables[0].Rows[i]["UserID"].ToString()&&txtPassword.Text.Trim()==loginDataSet.Tables[0].Rows[i]["Password"].ToString())
    {
        MainForm mainForm=new MainForm();
        mainForm.Show();
        this.Close();
    }
    else
    {
        MessageBox.Show("您的输入不正确");
    }
}
可结果是:
即使输入对了 也显示"您的输入不正确"
为什么阿?

回复列表 (共4个回复)

沙发

因为你没有让正确输入后跳出循环,所以即使你输入正确,它仍然在循环执行.

板凳

不是有this.Close()吗?
那应该在哪写上break阿?
我想验证正确后显示MainForm,关闭this

3 楼

你只是让窗体关闭了,而没有跳出循环,试试在this.Close()后面加上break;

4 楼

搞定了 谢谢

我来回复

您尚未登录,请登录后再回复。点此登录或注册