Ask the Expert

How do I validate a user input and discard the input if it is not numeric?

How do I validate a user input and discard the input if it is not numeric? My code:
private void txtQuantity_KeyPress(object sender, 
System.Windows.Forms.KeyPressEventArgs e)
		{
			if (char.IsDigit(e.KeyChar)  == false)
			{
				MyErrorProvider.SetError(txtQuantity,"Please
Enter a Numeric Value");
				}
			else
				MyErrorProvider.SetError(txtQuantity,"");
		}

From MSDN Help:
"Set Handled to true to cancel the KeyPress event. This keeps the control from processing the key press."

The "proper" C# code would be:

private void txtQuantity_KeyPress(object sender, KeyPressEventArgs e)
{
 if (!char.IsDigit(e.KeyChar))
 {
  MyErrorProvider.SetError(txtQuantity,"Please Enter a Numeric 
Value");
  e.Handled = true;
 }
 else
 {
  MyErrorProvider.SetError(txtQuantity,"");
 }
}

This was first published in July 2003

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: