0

在我的表单应用程序中有一个文本框和两个按钮,我需要启动一个进程,并且在文本框为空时,我需要禁用它下方的按钮。我已经尝试了谷歌的帮助,即:

public void buttonenableordisable()
{
   if( String.IsNullOrEmpty(textBox1.Text))
   {
       button1.Enabled = false;
   }
   else
   {
       button1.Enabled = true;
    }
}

但它只是禁用按钮,在向文本框添加文本时,按钮不启用,它保持灰色。我也试过,

if (string.IsNullOrWhiteSpace(textbox1.Text)) 
{
    button1.Enabled = false; // <<== No double-quotes around false
} 
else 
{
    // Don't forget to re-enable the button
    button1.Enabled = true;
}

但这也行不通。有任何想法吗 ?

提前致谢。

4

1 回答 1

1

您应该绑定到TextChanged文本框的事件并调用您的方法。也可以简化。

实际上,您只在表单加载时调用您的方法一次。

public void buttonenableordisable()
{
    button1.Enabled = !String.IsNullOrEmpty(textBox1.Text);
}

private void textBox1_TextChanged(object sender, EventArgs e)
{
    buttonenableordisable();
}
于 2016-11-20T17:24:06.997 回答