如何检查多个文本字段的空值;

时间:2012-06-16 18:50:32

标签: c# .net

如何检查三个不同的文本字段是否为空? 我有以下代码,但它给出了一个错误。你能在if语句中测试三种不同的条件吗?

public bool IsFieldBlank(string fieldValue)
    {
        if (fieldValue != null)
        {
            return true;
        }
        else
        {
            return false;
        }
    }

    private bool ValidateFields()
    {
//attempts to check all three fields but will not compile to do syntex
        if(IsFieldBlank(incidentTextBox.Text),IsFieldBlank(returnTextBox.Text),IsFieldBlank(actionTextBox.Text))
        {
            return true;
        }
        else
        {
            return false;

        }
    }

4 个答案:

答案 0 :(得分:1)

这更短:

return string.IsNullOrWhitespace(fieldValue);

如果您不在.NET 4.0或更高版本,则可以使用:

return string.IsNullOrEmpty(fieldValue);

您仍然需要单独检查每个字段。

如果你在表单中有这些,你可以递归迭代子控件集合,并为每个控件检查它是TextBox(使用is关键字)并检查它。

答案 1 :(得分:0)

在进行类似检查时,您必须使用逻辑AND运算符。

if(IsFieldBlank(incidentTextBox.Text) && IsFieldBlank(returnTextBox.Text) &&IsFieldBlank(actionTextBox.Text))

答案 2 :(得分:0)

你需要改变你的if语句

    if(IsFieldBlank(incidentTextBox.Text),IsFieldBlank(returnTextBox.Text),IsFieldBlank    (actionTextBox.Text)) 
    { 
        return true; 
    } 

到此:

    if((IsFieldBlank(incidentTextBox.Text))&&(IsFieldBlank(returnTextBox.Text))&&(IsFieldBlank(actionTextBox.Text))) 
    { 
        return true; 
    } 

这将允许您的代码编译。如果所有文本框都为空,则返回true。如果你希望它返回true,如果它们中的任何一个是空白的,那么你需要使用OR运算符||

答案 3 :(得分:0)

 private bool ValidateFields()     
{ 
        return !(string.IsNullOrEmpty(incidentTextBox.Text) || string.IsNullOrEmpty(returnTextBox.Text) || string.IsNullOrEmpty(actionTextBox.Text));
 }