有谁知道为什么当我从Textbox1
删除所有文字时,它不会将其视为空值而是将其视为空字符串?
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text == null)
{
textBox2.Text = "Null";
}
else
{
textBox2.Text = "Input Positive";
}
}
}
答案 0 :(得分:1)
null与字符串空
不同private void textBox1_TextChanged(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(textBox1.text))
{
textBox2.Text = "Null";
}
else
textBox2.Text = "Input Positive";
}
答案 1 :(得分:0)
因为textbox.text
是一个字符串属性,所以很明显它会与不是null对象的字符串进行比较!你可以尝试
if (string.IsNullOrEmpty(textBox1.text))
{}
您可以参考以下链接:
http://msdn.microsoft.com/en-us/library/system.windows.controls.textbox.text
答案 2 :(得分:0)
TextBox.Text
不要使用名为Null
的任何值,而是尝试使用textBox.Text.Length==0
或textBox.Text==""
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text.Trim() == "" || textBox1.Text.Length==0)
{
textBox2.Text = "Null";
}
else textBox2.Text = "Input Positive";
}