在大多数情况下,这确实有效,问题是Andrea和Brittany会弹出消息框,但它对Eric来说是正常的。如果我尝试在每个if语句之后放置else语句,它仍会弹出Brittany和Andrea,但随后也会弹出Eric。有人能告诉我我做错了什么。
private void button1_Click(object sender, EventArgs e)
{
String Andrea;
String Brittany;
String Eric;
if (textBox1.Text == "Andrea")
{
Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
}
if (textBox1.Text == "Brittany")
{
Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
}
if (textBox1.Text == "Eric")
{
Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
}
else
{
MessageBox.Show("The spelling of the name is incorrect", "Bad Spelling");
}
{
}
}
答案 0 :(得分:2)
尝试使用其他如果是这样的话。
if (textBox1.Text == "Andrea")
{
Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
}
else if (textBox1.Text == "Brittany")
{
Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
}
else if (textBox1.Text == "Eric")
{
Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
}
else
{
MessageBox.Show("The spelling of the name is incorrect", "Bad Spelling");
}
答案 1 :(得分:2)
尝试这个...通过保留名称列表,您可以轻松扩展所涵盖的名称,而不必再编写任何代码。只需将新名称添加到名单
即可List<string> names = new List<string>() // list of names to check for
{ // if a name is not in this list
"Andrea","Brittany","Eric" // the error message will show
}; // otherwise, the calculation will be performed
if ( names.Contains(TextBox1.Text) )
{
Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
}
else
{
MessageBox.Show("The spelling of the name is incorrect", "Bad Spelling");
}
答案 2 :(得分:1)
switch(textBox1.Text)
{
case "Andrea" : Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
case "Brittany" : Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
case "Eric" : Commission.Text = (Convert.ToDouble(textBox2.Text) / 10).ToString();
default: MessageBox.Show("The spelling of the name is incorrect", "Bad Spelling");
}
答案 3 :(得分:0)
好吧,我不知道你之前的尝试,但是目前每个if语句都是单独处理的。因此,如果textBox1.Text!=“Eric”,则附加到Eric的else将会触发,在这种情况下显示MessageBox,无论其他两个是否匹配。
如果尝试,你的别人可能有错误吗?试试上面的一些人如何发布,看看是否有效。