如何检查用户是否在文本框中写入小数
问题描述:
我需要当用户写例如:10.10
我需要显示错误信息:
这个文本框只有整数:
接受只有10的整数数字
private void txtQty_TextChanged(object sender,EventArgs e)
{
}
I need when the user Write for Example : 10.10
I need to Show Error Message :
This textbox Only Integer :
Just Accept Only Integer Number Like 10
private void txtQty_TextChanged(object sender, EventArgs e)
{
}
答
对于Decimal,使用Decimal.TryParse,对于整数,使用Int32.TryParse。
For Decimal you use Decimal.TryParse and for integers use Int32.TryParse.
private void txtQty_TextChanged(object sender, EventArgs e)
{
decimal txtbox1;
if (Decimal.TryParse(txtBoxDecimal.Text, out txtbox1))
{
//do something with txtbox1
}
else
{
lblMessage.Text = "* Not a decimal.";
return;
}
int32 txtbox2;
bool result = Int32.TryParse(txtBoxInteger.Text, out txtbox2);
if (result)
{
//do something with txtbox2
}
else
{
lblMessage.Text = "* Not a number.";
return;
}
}
private void txtQty_TextChanged(object sender, EventArgs e)
{
int number;
bool result = Int32.TryParse(txtQty.Text, out number);
if (!result)
{
MessageBox.Show("Invalid Input");
txtQty.Text = "";
}
}
使用NumericUpDown控件,这将强制用户输入int或decimal。 />
强制用户输入int值:
Use NumericUpDown control, this will force the user to enter either int or decimal.
To force user enter int value:
NumericUpDown.DecimalPlaces = 0;
强制用户输入小数值:
To force user enter decimal value:
NumericUpDown.DecimalPlaces = 2;
这将节省您的工作,以验证,验证和过滤用户输入。
This will save your effort to validate, verify and filter the user input.