1

只有当文本框为空时,我才尝试显示空值。在我的情况下,即使我在文本框中输入,它也不会检测为空值。请帮我解决我的错误。

 protected void AnyTextBox_TextChanged(object sender, EventArgs e)
        {

            if ((string.IsNullOrEmpty(TextBox1.Text)))
            {
                TBResult1.Text = "N/A";
            }
            else
            {
                TBResult1.Text = TextBox1.ToString();
            }

 <asp:TextBox ID="TextBox1"  OnTextChanged="AnyTextBox_TextChanged" AutoPostBack="true" runat="server"></asp:TextBox>
 <asp:TextBox ID="TBResult1"  OnTextChanged="AnyTextBox_TextChanged" AutoPostBack="true" runat="server"></asp:TextBox>
4

5 回答 5

2

从文档:

String.IsNullOrEmpty方法

指示指定的字符串是 null 还是 Empty 字符串。

例子:

string s1 = "abcd"; // is neither null nor empty.
string s2 = "";     // is null or empty
string s3 = null;   // is null or empty

string.IsNullOrWhiteSpace(s1); // returns false
string.IsNullOrWhiteSpace(s2); // returns true
string.IsNullOrWhiteSpace(s3); // returns true

此外,您可以这样做:

if (string.IsNullOrEmpty(s1)) {
    Message.Show("The string s1 is null or empty.");
}

在您的代码中:

if ((string.IsNullOrEmpty(TextBox1.Text)))
{
    // The TextBox1 does NOT contain text
   TBResult1.Text = "N/A";
}
else
{
    // The TextBox1 DOES contain text
    // TBResult1.Text = TextBox1.ToString();
    // Use .Text instead of ToString();
    TBResult1.Text = TextBox1.Text;
}
于 2013-05-26T18:19:32.173 回答
1

代替

TBResult1.Text = TextBox1.ToString();

TBResult1.Text = TextBox1.Text;
于 2013-05-26T18:37:47.200 回答
0

尝试这个:

 if(string.IsNullOrWhiteSpace(this.textBox1.Text))
    {
      MessageBox.Show("TextBox is empty");
    }
于 2013-05-26T18:11:43.517 回答
0

应该是这样的,你在else部分漏掉了TextBox1.Text

     protected void AnyTextBox_TextChanged(object sender, EventArgs e)
            {

                if ((string.IsNullOrEmpty(TextBox1.Text)))
                {
                    TBResult1.Text = "N/A";
                }
                else
                {
                    TBResult1.Text = TextBox1.Text.ToString();
                }
            }
于 2013-05-26T18:48:41.763 回答
0

像这样检查你的条件。我使用这个,它工作正常。

if(TextBox1.Text.Trim().Length > 0)
{
    //Perform your logic here
}

否则你必须检查这两个功能

if (string.IsNullOrEmpty(TextBox1.Text.Trim()) || string.IsNullOrWhiteSpace(TextBox1.Text.Trim()))
{

}
于 2013-05-27T05:59:25.493 回答