C#里如何只让用户在TextBox里只输入数字?

如题,急~~~

第1个回答  2019-04-01
前台还是后台?
如果是前台可以直接使用验证控件+正则表达式
正则表达式:^\d+$(纯数字,不含小数点)
^\d+(.\d+)?$(含小数点)
正则表达式写法具体看你的要求,这个你可以参考正则表达式的具体说明
如果后台也可以使用正则表达式,不过我通常比较偷懒,我会直接使用异常处理。
try
{
double
x=Convert.ToDouble(xx.Text.Trim());
//直接转换,如果是数字无异常,如果不是数字会抛异常
}
catch
(Exception
ex)
{
}
第2个回答  2008-05-05
在你的textBox的keyPress事件中写如下代码就可以实现了
if (!char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
else
{
e.Handled = false;
}
第3个回答  2008-05-05
加一个验证控件

<asp:CompareValidator ID="CompareValidator1" runat="server"
ErrorMessage="CompareValidator" ControlToValidate="a" Operator="DataTypeCheck"
Type="Integer"></asp:CompareValidator>

a换成你的TextBox的id,类型可以用整形或者浮点本回答被提问者采纳
第4个回答  2008-05-05
CS还是BS?
相似回答