我有2个文本框,如果它们为空,它会自动在文本框中响应“未知”,但是用我编写的这段代码它们仍然为空
private void btnSaveAddress_Click(object sender, EventArgs e)
{
if (!(string.IsNullOrEmpty(txtPhoneAddress.Text)))
{
txtPhoneAddress.Text = "Unknown";
}
if (!(string.IsNullOrEmpty(txtMailAddress.Text)))
{
txtMailAddress.Text = "Unknown";
}
try
{
addressesBindingSource.EndEdit();
addressesTableAdapter.Update(this.appData14.Addresses);
}
catch (Exception ex)
{
MetroFramework.MetroMessageBox.Show(this, ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
addressesBindingSource.ResetBindings(false);
}
}
答案 0 :(得分:1)
尝试使用
string.IsNullOrEmpty(txtPhoneAddress.Text)
代替
!string.IsNullOrEmpty(txtPhoneAddress.Text)
否则,当文本框为empty
或null
时,您将不会填充数据
string.IsNullOrEmpty
将在arg字符串为true
或为空时返回null
。
答案 1 :(得分:0)
如果我对您的理解正确,那么您正在检查的是与您实际想要的相反的东西。 如果是这种情况,则检查文本框是否为空。
答案 2 :(得分:0)
TextBox控件的Text属性不能为null。只有它可以为空(“”)。但是您应该在检查Textbox是否为空之前进行修剪。
if(txtPhoneAddress.Text.Trim() == ""){
txtPhoneAddress.Text = "Unknown";
}