当前位置:  编程技术>.net/c#/asp.net

C# 实现只能输入数字的文本框

    来源: 互联网  发布时间:2014-08-30

    本文导语:  代码:   代码示例: private void textBox1_KeyPress(object sender, KeyPressEventArgs e)          {      e.Handled = !(Char.IsNumber(e.KeyChar) || e.KeyChar == (char)8 || e.KeyChar == '.');      if (!e.Handled) (sender as TextBox).Tag = (sender as TextBox).Text;//记...

代码:
 

代码示例:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)         

    e.Handled = !(Char.IsNumber(e.KeyChar) || e.KeyChar == (char)8 || e.KeyChar == '.'); 
    if (!e.Handled) (sender as TextBox).Tag = (sender as TextBox).Text;//记录最后一次正确输入 

 
private void textBox1_TextChanged(object sender, EventArgs e) 

    if (!System.Text.RegularExpressions.Regex.IsMatch((sender as TextBox).Text, @"^(?!0/d)/d+(/./d*)?$")) 
    { 
        int index = (sender as TextBox).SelectionStart; 
        (sender as TextBox).Text = (sender as TextBox).Tag as string; 
        (sender as TextBox).SelectionStart = index; 
    } 

复制以下代码到项目中,然后编译,从工具栏中拖出这个控件,就可以使用了。
代码:
 

代码示例:
public class NumbericTextbox : TextBox 

    protected override void OnKeyPress(KeyPressEventArgs e) 
    { 
        e.Handled = !(Char.IsNumber(e.KeyChar) || e.KeyChar == (char)8 || e.KeyChar == '.'); 
        if (!e.Handled) this.Tag = this.Text;//记录最后一次正确输入  
        base.OnKeyPress(e); 
    } 
    protected override void OnTextChanged(EventArgs e) 
    { 
        base.OnTextChanged(e); 
        if (!System.Text.RegularExpressions.Regex.IsMatch((this).Text, @"^(?!0/d)/d+(/./d*)?$|")) 
        { 
            int index = (this).SelectionStart; 
            (this).Text = (this).Tag as string; 
            (this).SelectionStart = index; 
        } 
    } 
    public const int WM_PASTE = 0x302; 
    protected override void WndProc(ref Message m) 
    { 
        if (m.Msg == WM_PASTE)//粘贴 
        { 
            if (!Regex.IsMatch(Clipboard.GetText(), @"^(?!0/d)/d+(/./d*)?$|")) return; 
        } 
        base.WndProc(ref m); 
    } 

 

说明:
如果不限制整数值,只是要求数字序列,把以上代码中的正则全部替换为:@"^/d+$"即可。

您可能感兴趣的文章:
TextBox限制只能输入数字的方法
c#判断输入内容是否数字的代码
如何让Asp.net TextBox控件只允许输入数字


    
 
 

您可能感兴趣的文章:

  • c#通过委托delegate与Dictionary实现action选择器代码举例
  • C#实现获取枚举中元素个数的方法
  • C#实现自定义双击事件
  • C#键盘输入回车键实现点击按钮效果的方法
  • C#实现获取一年中是第几个星期的方法
  • C#实现Datatable排序的方法
  • C#实现装箱与拆箱操作简单实例
  • 解决C#中WebBrowser的DocumentCompleted事件不执行的实现方法
  • C#下实现创建和删除目录的实例代码
  • 使用C#实现在屏幕上画图效果的代码实例
  • C#实现过滤html标签并保留a标签的方法
  • c#实现TextBox只允许输入数字
  • C# Winform 整个窗口拖动的实现代码
  • c# ListView实现双击Item事件的变通方法
  • C#实现随鼠标移动窗体实例
  • C#中的FileUpload 选择后的预览效果具体实现
  • C# 窗体隐藏及任务管理器中禁止关闭的实现代码
  • C#的锯齿数组以及C++实现代码
  • C#格式化文件大小的实现代码
  • C#怎样才能实现窗体最小化到托盘呢?
  • C# char类型字符转换大小写的实现代码
  • 请问html中的文本输入框中如何实现静态的不可修改文本
  • 急问:怎么将一个文本文件平均拆分成10个文本文件?在shell里面怎么实现?谢谢
  • 如何实现redhat linux下的文本编辑器text editor里面的内容拷贝到netscape中的文本编辑器中
  • jQuery实现textarea文本框半透明文本提示效果
  • 如何实现点击一个按钮,在文本框中显示?
  • 文本压缩算法C++实现 Golden Huffman
  • 如何用Java实现二进制文件到文本文件的相互转化?
  • 如何实现动态刷新文本框?
  • 怎样在Linux实现文本模式的直接写屏?
  • 在linux命令如何实现文本替换?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ejb-ql只能 like '?%' 么?我想实现模糊查寻,想实现 like'%?%' 怎么办??
  • 在LINUX下,进程间访问临界资源只能通过效率很低的锁文件方式来实现吗?
  • 锁定Vector类型,使其同一时刻只能有一个线程访问,怎么实现??
  • unix 下 C++实现 ftp 到另一台主机上 修改文件内容 !能不能直接在主机上修改 还是只能get下来本地修改完后 在put上去
  • jQuery实现文本框只能输入数字/关闭输入法状态
  • JQuery实现INPUT只能输入数字与小数点
  • C#实现微信公众号群发消息(解决一天只能发一次的限制)实例分享
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • socket实现多文件并发传输,求助多线程实现问题?
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • interface 到底有什么用???实现接口,怎么实现??
  • 通过javascript库JQuery实现页面跳转功能代码
  • 怎么用Jsp实现在页面实现树型结构?
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • windows 下的PortTunnel 在linux下怎么实现?或者相应的已经实现的软件?端口映射
  • php实现socket实现客户端和服务端数据通信源代码
  • 网站重定向用C语言实现iptables,ACL实现
  • flash AS3反射实现(describeType和getDefinitionByName)
  • 在linux下如何编程实现nslookup命令实现的IP地址和域名互相转换的功能?
  • boost unordered_map和std::list相结合的实现LRU算法
  • 求在freebsd+Squid下实现pc上网的透明代理的实现方法!给出具体配置方法的高分谢!
  • 使用java jdk中的LinkedHashMap实现简单的LRU算法
  • linux下如实现与window下的驱动器实现文件共享??
  • iphone cocos2d 精灵的动画效果(图片,纹理,帧)CCAnimation实现
  • qt如何实现:操作键盘实现数据的滚动?
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 我想用APPLET实现读取客户端的图片文件,该如何实现?
  • html<pre>标签自动换行实现方法
  • PING是用TCP,还是用UDP来实现的?或是采用其它协议实现的?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3