如果文本框等于两件事

时间:2014-12-07 19:57:05

标签: c# textbox

是否可以说如果一个文本框等于做两件事情,那么像textBox1.Text等于“A”或“B”它会做什么,或者这是由两个if语句完成的?示例代码如下。

private void button1_Click(object sender, EventArgs e)
    {
        if (textBox1.Text == "A" or "B")
        {
            //do stuff
        }
    }

2 个答案:

答案 0 :(得分:5)

好吧,您应该使用||作为or

if (textBox1.Text == "A" || textBox1.Text == "B")

答案 1 :(得分:2)

如果您只有一个或两个值要检查,请使用逻辑OR运算符||创建复合条件:

if (textBox1.Text == "A" || textBox1.Text == "B") …

然而,这将很快变得繁琐而不仅仅是几个值。在这种情况下,您可能最好将所有允许值放入集合中,然后检查文本框是否为'文本包含在集合中:

var values = new string[] { "A", "B", … };
if (values.Contains(textBox1.Text)) …

虽然你没有问,但是对消毒输入进行消毒可能是一个好主意;例如在比较值之前调用textBox1.Text.Trim()。用户容易意外输入太多空格。