if语句有构建错误

时间:2014-01-28 10:43:32

标签: c#

我的if语句有什么问题?我想要一个按钮,只有当用户名为“username”且密码为“password”时才能登录。

 private void button1_Click(object sender, EventArgs e)
        {
            if UserNameTextbox.Text = "UserName" 
                && PasswordTextbox.Text = "password" 
            {
            GameSelect gs = new GameSelect();
            gs.ShowDialog();
            }
        }

6 个答案:

答案 0 :(得分:3)

你有两个问题,首先你需要围绕你的条件括号。其次,你的等于应该是双等于作为比较(不是指定)。事实上,我实际上建议使用.Equals(),因为你可以明确定义区分大小写。

private void button1_Click(object sender, EventArgs e)
{
  if (UserNameTextbox.Text == "UserName"  && PasswordTextbox.Text == "password")
  {
    GameSelect gs = new GameSelect();
    gs.ShowDialog();
  }
}

答案 1 :(得分:3)

您正在为文本框分配值,而不是检查其值。 使用==而不是=:

if (UserNameTextbox.Text == "UserName" && PasswordTextbox.Text == "password"){

}

你还需要在if子句周围加上()。

答案 2 :(得分:2)

使用=为变量赋值。使用==检查是否相等。 此外,您需要将整个条件括在括号中。

最后看起来应该是这样的:

if (UserNameTextbox.Text == "UserName" 
            && PasswordTextbox.Text == "password") {
    //...
}

答案 3 :(得分:1)

你错过了括号

if(/* some condition */)
{

}

C#使用双等号(==)表示相等,而不是单个。

答案 4 :(得分:0)

应该是这样的:

private void button1_Click(object sender, EventArgs e)
    {
        if( UserNameTextbox.Text == "UserName" 
            && PasswordTextbox.Text == "password" )
        {
        GameSelect gs = new GameSelect();
        gs.ShowDialog();
        }
    }

答案 5 :(得分:0)

为了进行比较,您必须使用==,我们仅使用=进行分配。

private void button1_Click(object sender, EventArgs e)
{
  if (UserNameTextbox.Text == "UserName"  && PasswordTextbox.Text == "password")
  {
    GameSelect gs = new GameSelect();
    gs.ShowDialog();
  }
}