13

有问题的文本框涉及我的代码中的 if 语句,其效果是

if (textbox.text != "") 
{
    do this
}

我很好奇空文本框是否会被视为空字符串或空语句。

4

6 回答 6

29

尝试使用IsNullOrWhiteSpace,这将确保验证空白也无需修剪它。

if (!string.IsNullOrWhiteSpace(textbox.Text))
{
    //code here
}

根据文档string.IsNullOrWhiteSpace评估为:

return String.IsNullOrEmpty(value) || value.Trim().Length == 0;

String.IsNullOrWhiteSpace

指示指定的字符串是 null、空还是仅包含空白字符。

于 2013-05-17T14:56:34.203 回答
4

简而言之,它将是一个空字符串,但您可以使用调试器并自己检查。

然而,为了最佳实践使用IsNullOrEmptyIsNullOrWhiteSpace

if (!string.IsNullOrEmpty(textbox.Text)) {

}

或者:

if (!string.IsNullOrWhiteSpace(textbox.Text)) {

}    

http://msdn.microsoft.com/en-us/library/system.string.isnullorwhitespace.aspx

于 2013-05-17T14:56:18.663 回答
3

这将是一个空字符串,但最好用这个IsNullOrEmptyIsNullOrWhiteSpace检查

if (!string.IsNullOrEmpty(textbox.text))
{
  //do this
}

IsNullOrWhiteSpace也处理输入字符串中的空格。因此,如果您也不想执行空白代码,请使用第二个选项。

于 2013-05-17T14:55:41.153 回答
2

它将被视为一个空字符串。

于 2013-05-17T14:55:30.647 回答
-1
string search = txtSearch.Text.Trim() != "" ? txtSearch.Text.Trim() : "0";
于 2014-12-03T06:08:46.470 回答
-4

if (textbox.text != "" || textbox.text != null)

于 2013-05-17T14:57:24.213 回答