利用正则表达式限制文本框数据的自定义控件(C#)
最近做c#项目,经常需要限制文本类型的TextBox(例如只接受小数,只接受身份证号等)。同学们解决这类问题常常用事后处理模式:录入字符结束后在控件离开或确认时进行判断。然而这会给用户带来不良的使用体验。网上有部分文章采用KeyPress事件发生时判断的方法,然而该方法并不支持对复制粘贴而来的文本的判断。下面的代码定义了一个自定义控件,可以通过设置Regex(正则表达式)属性修改文本框的匹配类型(默认接受浮点数)。支持如下三种情况:1.正常按键输入的字符,包括西文、中文字符等2.通过键盘快捷键方式贴入的文本,即Ctrl+V操作3.通过上下文关联菜单的Mouse操作贴入的文本,即”粘贴“操作。
下载地址
用户评论
挺好用的,非常感谢楼主!
非常不错的参考
不错,很有借鉴意义
对学习正则表达式有一定帮助。
不错 参考很好
参考用不错。谢谢!
试试,再自己根据写吧
借鉴学习着,挺有用的
主要讲了实现原理,适合初学人员。不过人家没要分数,支持了
还是总结一些常用的正则表达式