5

我正在使用以下代码检查空文本框,如果为空,则跳过复制到剪贴板并继续执行其余代码。

我不明白为什么会出现“值不能为 NULL”异常。它不应该看到空值并继续前进而不复制到剪贴板吗?

private void button_Click(object sender, EventArgs e)
{
    if (textBox_Results.Text != null) Clipboard.SetText(textBox_Results.Text);            

    //rest of the code goes here;
}
4

3 回答 3

7

您可能应该像这样进行检查:

if (textBox_Results != null && !string.IsNullOrWhiteSpace(textBox_Results.Text))

只是一个额外的检查,所以如果textBox_Resultsnull没有得到空引用异常。

于 2013-01-16T01:57:11.087 回答
6

如果使用 .NET 4 String.IsNullOrWhitespace()检查 .Text 的 Null 值,则应使用String.IsNullOrEmpty() 。

private void button_Click(object sender, EventArgs e)
    {
        if (!String.IsNullOrEmpty(textBox_Results.Text) Clipboard.SetText(textBox_Results.Text);            

        //rest of the code goes here;
    }
于 2013-01-16T01:55:22.747 回答
1

我认为您可以检查 Text 是否为空字符串:

private void button_Click(object sender, EventArgs e)
{
    if (textBox_Results.Text != "") Clipboard.SetText(textBox_Results.Text);            

    //rest of the code goes here;
}

您还可以使用 string.IsNullOrEmpty() 方法进行检查。

于 2013-01-16T01:57:54.907 回答