c#中怎么判断选择中输入的是不是整数啊 不是整数就能自动报错,这个方法该怎么弄啊。新手求解。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 刻意使用 int.TryPase 函数。 虽然比较难用,可以使用 tryParse 1、从源头上杜绝这种错误,做正则限制,让非数字输入不进去2、Int.TryParse,返回false就是报错咯 int result=0;int.TryParse(num,ref result); 用正则表达式,例如:private void textBox1_Leave(object sender, EventArgs e){ if (!Regex.IsMatch(textBox1.Text.ToString(), @"^-?[1-9]\d*$|^0$")) { MessageBox.Show("请输入数字"); textBox1.SelectAll(); return; }}只能输入负整数,0,正整数,否则要提示输入数字 要是web的,有个验证控件,拖进去一个,直接设置属性就行,更方便 可以为输入的文本框添加一个KeyPress事件,只允许用户输入数字和退格,那肯定是整数了哇 private void TextBox1_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar != '\b' && !Char.IsDigit(e.KeyChar)) { e.Handled = true; } else { MessageBox.Show("请输入整数","类型错误",MessageBoxButtons.OK,MessageBoxIcon.Error); } } 听楼主的意思是想要 用户输入完后,若不是数字则提示用户错误。1.限制用户只能输入数字或者2.不限制内容,放一个label在此textbox后面,先隐藏这个label,当textbox失去焦点时,判断int.TryParse(num,ref result);是否为数字,若不是,则修改label的text为“只能输入数字”,并且显示出来。或者3.网上查询ajax实时验证用户名。 1、输入时正则控制。2、 int.TryParse() public static bool IsNumber(object sNum) { long num; //临时变量 if (sNum == null) { return false; //如果传入的值为NULL,返回False } if (long.TryParse(sNum.ToString(), out num)) //尝试转换传入的值 return true; //成功返回True else return false; //失败返回False } 假设输入的整数为 numif(num.GetTypeCode() == TypeCode.Int32){ //如果num为整数执行}else{ //否则num不为整数}上面是判断的整数先返回类型,再和指定的类型做判断! 你直接设置textbox 只能输入数字不就可以了 private bool IsNumeric(string str) { if (str == null || str.Length == 0) { return false; } var reg = new Regex(@"^\+?[1-9]0-9]*$"); //正整数 var result = reg.IsMatch(str); return result; } bool isScs= int.TryParse("S", out int result); bool isScs = int.TryParse("111", out int result);推荐这个方法。 使用TryParse方法啊 软件公司提供sdk开发包怎么开发软件 无法加载进行反序列化所需的类型,我用的是VS2008 一个关于时间字符串处理的问题 在水晶报表中如何做group by查询??? 创建了一个线程,当它执行完任务后,它就自动销毁了,还是说它只是停止了,但仍然存在。 ListView控件问题 如何判断目标窗口是否关闭? 判断DataTable并赋值 在线 点击treeview某一主键节点显示在datagridview中 如何实现点击DataGrid行时使的选种的行改行变色? c# 引用viso2010控件报错 “创建AxHost”失败 求一个完整的c#入门经典第六版 pdf书下载地址
2、Int.TryParse,返回false就是报错咯
int.TryParse(num,ref result);
private void textBox1_Leave(object sender, EventArgs e)
{
if (!Regex.IsMatch(textBox1.Text.ToString(), @"^-?[1-9]\d*$|^0$"))
{
MessageBox.Show("请输入数字");
textBox1.SelectAll(); return;
}
}只能输入负整数,0,正整数,否则要提示输入数字
{
if (e.KeyChar != '\b' && !Char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
else
{
MessageBox.Show("请输入整数","类型错误",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
1.限制用户只能输入数字
或者2.不限制内容,放一个label在此textbox后面,先隐藏这个label,当textbox失去焦点时,
判断int.TryParse(num,ref result);是否为数字,若不是,则修改label的text为“只能输入数字”,并且显示出来。
或者3.网上查询ajax实时验证用户名。
2、 int.TryParse()
public static bool IsNumber(object sNum)
{
long num; //临时变量
if (sNum == null)
{
return false; //如果传入的值为NULL,返回False
}
if (long.TryParse(sNum.ToString(), out num)) //尝试转换传入的值
return true; //成功返回True
else
return false; //失败返回False
}
if(num.GetTypeCode() == TypeCode.Int32)
{
//如果num为整数执行
}
else
{
//否则num不为整数
}
上面是判断的整数先返回类型,再和指定的类型做判断!
{
if (str == null || str.Length == 0)
{
return false;
}
var reg = new Regex(@"^\+?[1-9]0-9]*$"); //正整数
var result = reg.IsMatch(str);
return result; }
bool isScs= int.TryParse("S", out int result);
bool isScs = int.TryParse("111", out int result);推荐这个方法。