c# - 在 c# winform 中更改的文本上启用禁用按钮

标签 c# winforms

我正在开发一个应用程序,其中在搜索框中有一个按钮(就像 iTunes 中的按钮)。 我想在文本框中有文本时启用取消按钮,并在文本框为空时禁用它。 我尝试使用以下代码在文本框上使用 text_changed 事件,但它跳过了 if 条件。即使发件人向我发送了正确的值,但我无法将其放入 if else 中。

private void textBox1_TextChanged(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(sender.ToString()))
        {
            btn_cancel.Visible = false;
        }
        else
        {
            btn_cancel.Visible = true;
        }
    }

请帮忙

最佳答案

这是一个简单的解决方案。

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        this.button1.Enabled = !string.IsNullOrWhiteSpace(this.textBox1.Text);
    }

当然,您必须在表单最初加载时设置 button.Enabled = false,因为文本框事件不会在启动时触发(对于当前为您的问题提供的所有答案都是 true)。

关于c# - 在 c# winform 中更改的文本上启用禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14350987/

相关文章:

c# - 标准 C# DataGrid 的免费替代品?

c# - 需要一种更好的方法来遍历表单控件

c# - 在 C# 中验证复选框和单选按钮

c# - C# 中的一个程序,用于判断打开的应用程序是否处于最大化模式

c# - 在图片框内绘制矩形 SizeMode Zoom

c# - 从一开始就隐藏我的窗口?

.net - WinForms - 如何在不传递委托(delegate)的情况下从单独的线程访问/调用 UI 线程中的方法?

c# - c# 属性还有其他有用的属性吗?

c# - 从 bool 函数c#中提取字符串变量

c# - 如何使用 WebResponse 下载 .wmv 文件