C#禁用基于运行时文本框用户输入值的复选框

时间:2013-09-23 18:46:45

标签: c# winforms checkbox textbox

我有两个文本框让用户输入开始日期和结束日期。然后我有一个复选框,允许用户检查以查看一些计算。我的问题是,如果开始日期和结束日期之间的持续时间短于特定长度,我该如何禁用该复选框。我的意思是,在用户输入开始日期和结束日期之后,他/她会看到复选框被禁用,因为时间段长度不够长。

if (productWealth.Count < 3)
    checkBox7.Enabled = false;

这就是我现在所拥有的,如果count < 3,则禁用复选框7。似乎应用程序只在运行时运行计数单击RUN按钮,但我希​​望它们立即生效。

2 个答案:

答案 0 :(得分:2)

您可以使用事件TextChanged,因此当用户更改TextBox的值时,请检查其是否为真,并启用CheckBox

tboxEndDate.TextChanged += new TextChangedEventHandler(tboxEndDate_TextChanged);

void tboxEndDate_TextChanged(object sender, TextChangedEventArgs e)
{
   // Calcule the productWealth
   if (productWealth.Count < 3) checkBox7.Enabled = false;
}

答案 1 :(得分:0)

查看Leave()事件的开始和结束日期文本框。将if()语句放在那里。

呃,如果这是WinForms ......