/***********************************************************************
* Copyright(c) 2010 XX公司
* CLR 版本: 2.0.50727.42
* 文 件 名:InputValidateInterFace.cs
* 创 建 人:FK
* 创建日期:2010-11-29 13:20:52
* 修 改 人:
* 修改日期:
* 备注描述:输入限制
************************************************************************/
using System;
using System.Windows.Forms;
namespace ScreenShow
{
public sealed class InputValidate
{
#region 输入控制--限制只能输入浮点数、数字字符、整数
/// <summary>
/// 限制只能输入浮点数和负号
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void InputDecimalMinus(object sender, KeyPressEventArgs e)
{ //限制只能输入浮点数
//如果不是0~9(48~57)、.(46)、Enter(13)、BreakSpace(8),不处理
if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != 13 && e.KeyChar != 46 && e.KeyChar != 22 && e.KeyChar != 3 && e.KeyChar != 24 && e.KeyChar != 26 && e.KeyChar != 45)
{
e.Handled = true;
}
//允许输入负号
if (e.KeyChar == 45 && (((TextBox)sender).SelectionStart != 0 || ((TextBox)sender).Text.IndexOf("-") >= 0))
{
e.Handled = true;
}
//如果是小数点,则判断是否已经存在,如果存在,则不拒绝当前输入
if (e.KeyChar == 46 && (((TextBox)sender).SelectionStart == 0 || ((TextBox)sender).Text.IndexOf(".") >= 0))
{
e.Handled = true;
}
//如果是回车键,则进行焦点转移
if (e.KeyChar != 13) return;
SendKeys.Send("{TAB}");
e.Handled = true;
}
/// <summary>
/// 限制只能输入浮点数
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void InputDecimal(object sender, KeyPressEventArgs e)
{ //限制只能输入浮点数
//如果不是0~9(48~57)、.(46)、Enter(13)、BreakSpace(8),不处理
if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != 13 && e.KeyChar != 46 && e.KeyChar != 22 && e.KeyChar != 3 && e.KeyChar != 24 && e.KeyChar != 26)
{
e.Handled = true;
}
//如果是小数点,则判断是否已经存在,如果存在,则不拒绝当前输入
if (e.KeyChar == 46 && (((TextBox)sender).SelectionStart == 0 || ((TextBox)sender).Text.IndexOf(".") >= 0))
{
e.Handled = true;
}
//如果是回车键,则进行焦点转移
if (e.KeyChar != 13) return;
SendKeys.Send("{TAB}");
e.Handled = true;
}
/// <summary>
/// 只能输入数字字母
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void InputAllCode(object sender, KeyPressEventArgs e)
{//只能输入数字字母 backspace 8,ctrl+v 22,ctrl+c 3,ctrl+x 24,ctrl+z 26
if (e.KeyChar != 8 && !Char.IsDigit(e.KeyChar) && e.KeyChar != 13 && !((e.KeyChar >= 'a' && e.KeyChar <= 'z') || (e.KeyChar >= 'A' && e.KeyChar <= 'Z')) && e.KeyChar != 22 && e.KeyChar != 3 && e.KeyChar != 24 && e.KeyChar != 26)
{
e.Handled = true;
}
else
{
if (e.KeyChar == 13)
{
SendKeys.Send("{TAB}");
e.Handled = true;
}
}
}
/// <summary>
/// 限制只能输入整数
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void InputInteger(object sender, KeyPressEventArgs e)
{//限制只能输入整数
if (e.KeyChar != 8 && (e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 13 && e.KeyChar != 22 && e.KeyChar != 3 && e.KeyChar != 24 && e.KeyChar != 26)
{
e.Handled = true;
}
else
{
//如果第一位输入0,则不接收
if (e.KeyChar == 48 && (((TextBox)sender).SelectionStart == 0))
e.Handled = true;
//如果是回车键,则按tab序进行跳转
if (e.KeyChar == 13)
{
SendKeys.Send("{TAB}");
e.Handled = true;
}
}
}
#endregion 输入控制--限制只能输入浮点数、数字字符、整数
}
}
调用
private void txtGoodsCount_KeyPress(object sender, KeyPressEventArgs e)
{
try
{
inputValidate.InputInteger(sender, e);
}
catch (Exception ex)
{
LogHelper.LogException(ex);
MsgBox.Error("系统出错!");
}
}
分享到:
相关推荐
文本框输入限制 正则表达式 直接粘贴复制就能用
jquery 插件 文本框输入限制 汉字,字母
javasxript的常用文本框的输入限制代码 有正则,有keyup,也有粘贴限制
js_文本框输入限制.docxjs_文本框输入限制.docx
详细的正则表达式,文本框输入限制 [大全]详细的正则表达式
1.文本框只能输入数字代码(小数点也不能输入) 2.只能输入数字,能输小数点. 4.只能输入字母和汉字 等等
html限制文本框输入小数点 数字 字母 汉字 等
jQuery textarea文本框输入文字字数限制提示代码,设置固定输入字符,实时计算显示已经输入多少字符。
C#限制文本框输入数字,各种方法.
js代码 [removed] //显示限制输入字符method function textAreaChange(obj){ ... var count_total = $this...jQuery textarea文本框输入文字字数限制提示代码,设置固定输入字符,实时计算显示已经输入多少字符。
原生js text文本框输入字数限制长度提示
限2位小数:任意数字:大写英文:小写英文:日 期: 任意中文:部分英文:范围: a,b,c,d,e: 部分中文:范围: 一二三四五六七八九十
js限制文本框只输入正整数 js限制文本框只输入正整数
设置文本框输入字符限制方法,这里主要是英文字母的限制
这是一款美观又实用的HTML5文本框输入字数限制提示特效,当input文本框文字超过限制字符时,输入框抖动动画提示,并不可再输入更多文字。
多行文本框如何限制输入字数方法二
C#限制文本框只允许输入数字类型,比如在本实例中,当你输入除了数字以外的字符类型时,便会弹出一个文本提示框,告诉您这个输入框内不允许输入其它类型的字符,在C#编程中,是比较常见且实用的小特效,欢迎新手...
vb2005限制文本框输入内容,防止输入其他字符,规范输入格式
限制TextBox只能输入整数或者小数,用正则表达式
NULL 博文链接:https://weishaoxiang.iteye.com/blog/920004