winform中TextBox通过正则限制只能输入两位小数

  • 原创
  • |
  • 浏览:1971
  • |
  • 更新:

在做winform程序的时候,有的时候我们需要让用户输入一些数据,比如让用户在textbox中输入数值的时候,同时业务要求输入只能是两位小数,这个时候就需要使用正则表达式等方法来实现,今天小编来通过一个小实验来实现这个功能。

工具/原料

  • 电脑一台
  • VS2010

方法/步骤

  1. 1

    首先小编这里创建一个小的winform程序,只有一个输入框,然后需要在输入框中让用户输入一个两位小数,或者以为甚至没有小数都可以,如下图:

    winform中TextBox通过正则限制只能输入两位小数
  2. 2

    但是此时运行程序发现,这个时候是可以输入任何东西的,输入汉字也是可以的,如下图:

    winform中TextBox通过正则限制只能输入两位小数
  3. 3

    接下来我们开始使用程序来限制输入小数的位数,如下图,选中输入框,在事件总选择KeyPress这个事件,然后双击这个事件,如下图:

    winform中TextBox通过正则限制只能输入两位小数
  4. 4

    双击KeyPress事件之后会在代码中自动生成KeyPress事件代码,这个事件的意思是,如果在文本框汇中输入字符在键盘按下的瞬间触发事件,如下图:

    winform中TextBox通过正则限制只能输入两位小数
  5. 4
    本页面未经授权抓取自百度经验
  6. 5

    然后我们来整体看一下代码,然后就其中的主要思想以及代码解释一下:

    1.最终结果我们通过设置e.handle为true或者false来实现允许和禁止输入,如果设置handle为false表示该事件未处理,交给系统处理,表示按键可以允许,如果设置handle为true表示事件已经处理,不交给系统处理,表示按键禁止

    2.然后根据键盘输入的字符,与正则表达式进行匹配,如果匹配则返回false,如果不匹配则返回true,

    整体代码基于上述两点进行编程,最终实现控制输入两位小数的效果,如下图:

    winform中TextBox通过正则限制只能输入两位小数
  7. 6

    然后运行程序,输入两位小数之后再输入其他字符,文本框无任何反应,如下图:

    winform中TextBox通过正则限制只能输入两位小数
    END

注意事项

  • 个人观点,仅供参考。
  • 感谢阅读。
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。
展开阅读全部