I have a textbox and a button in form2. When an item is clicked in form1, form2 appears. I would like to keep the button in form2 disabled while the textbox is empty, but when user starts typing, I’d like to enable the button.
I have tried using an if in my constructor after the initialisecomponent() like so, but it does not work:
if(textbox1.text != "")
{
btnOne.Enabled = true;
}
I have also tried calling a method called checkText() after the initialise component which uses a do-while loop to check like:
do{
btnOne.Enabled = true
}
while(textbox1.text != "");
Can anyone help?
You need to use an event. Check out the TextChanged event for the
TextBoxcontrol.Basically you will want something like this:
If you are using Visual Studio you can do the following to add the event code.
Note: This approach will require the user to “lose focus” on the
TextBoxcontrol before the event fires. If you want an as-you-type solution then check out the KeyUp event instead@Asif has made a good point regarding checking for whitespace characters too. This is your call on what is valid, but if you do not want to allow whitespace value to be used then you can use the IsNullOrWhiteSpace method instead – however, this requires you to be using .Net Framework 4.0 or higher