关于KeyPress事件只能输入数字小数的问题
2014-08-20 13:51
134 查看
前一段遇到了这个简单的问题,但是在网上搜索了一大堆答案,有的五花八门,特别长,还不能用,于是自己写了一个简单的代码,仅供参考。
其中47是0的ANSI码,58是9的ANSI码,8为backspace,46为小数点。
下面的代码可以实现,只能输入数字,而且只有一个小数点。
private void dpivalue_KeyPress(object sender, KeyPressEventArgs e)
{
if (!((e.KeyChar > 47 && e.KeyChar < 58) || e.KeyChar == 8 || e.KeyChar == 46))
e.Handled = true;
else if (e.KeyChar == 46 && (dpivalue.Text.ToString().Contains(".") || dpivalue.Text.ToString().StartsWith(".")))
{
e.Handled = true;
}
}
其中47是0的ANSI码,58是9的ANSI码,8为backspace,46为小数点。
下面的代码可以实现,只能输入数字,而且只有一个小数点。
private void dpivalue_KeyPress(object sender, KeyPressEventArgs e)
{
if (!((e.KeyChar > 47 && e.KeyChar < 58) || e.KeyChar == 8 || e.KeyChar == 46))
e.Handled = true;
else if (e.KeyChar == 46 && (dpivalue.Text.ToString().Contains(".") || dpivalue.Text.ToString().StartsWith(".")))
{
e.Handled = true;
}
}
相关文章推荐
- silverlight---TextBox只能输入数字或小数 屏蔽中文输入和非法粘贴: KeyDown事件处理方法
- 关于JS校验金额的问题(只能输入数字和小数点)
- DataGridView Keypress事件只能输入数字
- asp.net 关于只能输入数字和小数点的问题
- C#--关于事件的定义及注册,如何实现在一个文本框中只输入数字或者只能输入0至9十种数字、a至z或A至Z五十二种字符。
- C# 中 控件中只能输入数字 KeyPress 事件
- 关于EditText输入数字时候限制为一个亿的问题,且保留小数点两位小数
- edit中只能输入数字、小数点(只可以1个小数点)和负号+多个edit共用一个事件
- JS实现文本框只能输入两位小数的数字,不显示输入的其它字符
- edit中只能输入数字、小数点(只可以1个小数点)和负号+多个edit共用一个事件
- c# 如何让textbox只能输入数字和小数
- 关于只能输入数字的框和replace
- js 只能输入数字(正整数,正数,负数,小数)
- javascript控制text只能输入数字(整数,小数),兼容ie,ff,safari【转载】
- C# WinForm 文本框只能输入带两位小数的数字
- 键盘事件只能输入数字和FileUpload选中预览图片
- 一劳永获的解决textbox 只能输入数字、汉字、字母等问题
- 只能输入数字(整数和小数)的文本框(JTextField)
- JS判断只能输入数字问题
- 使用js让文本框只能输入数字 且小数保留两位