-2

3 つの異なるテキスト フィールドで null を確認するにはどうすればよいですか? 次のコードがありますが、エラーが発生しています。if ステートメントで 3 つの異なる条件をテストできますか?

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

4 に答える 4

1

これはより短いです:

return string.IsNullOrWhitespace(fieldValue);

.NET 4.0 以降を使用していない場合は、次を使用できます。

return string.IsNullOrEmpty(fieldValue);

フィールドを個別に確認する必要があります。

これらがフォームにある場合は、子コントロール コレクションを再帰的に反復し、各コントロールについてTextBox(isキーワードを使用して) であるかどうかを確認し、確認することができます。

于 2012-06-16T18:51:21.417 に答える
0

そのようなチェックを行うときは、論理 AND 演算子を使用する必要があります。

if(IsFieldBlank(incidentTextBox.Text) && IsFieldBlank(returnTextBox.Text) &&IsFieldBlank(actionTextBox.Text))
于 2012-06-16T18:53:32.607 に答える
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 演算子 || を使用する必要があります。

于 2012-06-16T18:53:46.477 に答える
0
 private bool ValidateFields()     
{ 
        return !(string.IsNullOrEmpty(incidentTextBox.Text) || string.IsNullOrEmpty(returnTextBox.Text) || string.IsNullOrEmpty(actionTextBox.Text));
 } 
于 2012-06-16T19:02:22.917 に答える