限制textBox输入值不能大于int,然后Convert.ToInt32转换,
如果使用
if(Convert.toInt32(txtId.Text)>2147483647)
{
Alert.Show("Error!")
}
这就已经用了Convert.ToInt32,已经转化失败了,在线求救高手,急!
PS:只使用textBox,不适用FineUI的NumberBox,因为某些原因,NumberBox不适用我的项目
这里只是限制不能大于Int,别用Convert.ToInt64(txtId.Text),因为txtId.Text是用户输入的值,所以可以输入无限个位数,我们要做的就是最多只能到Int最大值
如果TextBox.Text的内容根本不能转换为数值,自然会失败。
你可以这样:
long value;
if(!long.TryParse(txtId.Text, out value))
{
Alert.Show("请输入有效的数值。");
}
if(value > int.MaxValue)
{
Alert.Show("Error!");
}
这里,之所以用long类型,是因为你的数值输入可能是超出了int可表示的最大值(2147483647)。
谢谢!你回答的时候,我的同事刚好路过已经帮我解决了,不过还是采纳最快的哈(我是实习生,哈)
try { if(Convert.toInt32(txtId.Text)>2147483647) { Alert.Show("Error!"); } } catch(Exception e) { //异常处理 Alert.Show("输入有误,请重新输入"); }
你和我一个级别的。。。
楼上的答案是解决方案,你的只是抛异常。。咱一起学习吧