C#限制TextBox文本框输入格式
1.摘要
实现TextBox文本框输入格式限制主要思路:
textBox有个KeyPress事件,事件是在控件具有聚焦点并且用户按下并释放某个键后发生。
通过这个事件,可以通过ASCII码来与键盘输入的按钮进行判断处理,然后通过事件Handled手柄处理即可。
2.应用
比如限制某个文本输入只能是数字,有小数点和负数。数字对应ASCII的十进制位置是48-57,”-“对应的是45,”.“对应的是46,还要有删除的功能就需要退格键,对应的是8。
可以先限制输入的只能是45-57的按钮以及8退格键的按钮,然后排除47,然后再排除小数点不能在第一位,负号只能在首位,当负号存在,后面不能直接小数点。
3.代码
private void TextBox1_KeyPress(object sender, KeyPressEventArgs e){// 允许 数字,小数点,负号,/,退格键;if ((e.KeyChar < 45 || e.KeyChar > 57) && e.KeyChar != 8){e.Handled = true;}//负号只能在第一位if (e.KeyChar==45){if ((sender as TextBox).Text!=""){e.Handled = true;}}//“/”去掉if (e.KeyChar==47){e.Handled = true;}//小数点不能在首位if (e.KeyChar == 46 && (sender as TextBox).Text == ""){e.Handled = true;}//第一位是负号,第二位不能为小数点if (e.KeyChar ==46&& (sender as TextBox).Text == "-"){e.Handled = true;}}
多个文本框公用功能时,可以直接封装成函数,然后对应文本框的KeyPress事件调用封装的函数,或者直接在对应文本框的KeyPress事件那里直接调用写好功能的TextBox的KeyPress即可。
C#限制TextBox文本框输入格式相关推荐
- C# TextBox文本框只能输入数字、小数点(最大到2位)、退格键、负号
要实现TextBox文本框输入限制 ,先要为TextBox添加KeyPress事件. 代码如下: //数字.小数点(最大到2位).退格键.负号private void textBox1_KeyPres ...
- [正则表达式]文本框输入内容控制
整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n}$". 只能输入至少n ...
- Java集合框架上机练习题:用户分别从两个文本框输入学生的姓名和分数.............
编写一个应用程序,用户分别从两个文本框输入学生的姓名和分数,程序按成绩排序将这些学生的姓名和分数显示在一个文本区中. import java.awt.FlowLayout; import java.a ...
- VB 小技巧自定义TextBox文本框右键菜单
'TextBox单击鼠标右键总是跟出来一个系统默认的关于文本操作的菜单,如何把它去掉?请看如下代码. Private Sub Text1_MouseDown(Button As Integer, Sh ...
- VB 提取TextBox 文本框中指定一行字符串
这是使用EM_GETLINE message来做,比较奇特的是lParam是指向一个字串所在的位置, 但是该字串传入时,前两个Byte要存该字串允许的最大长度. '以下在Form需一个TextBox, ...
- 【超详总结/理解:正则表达式】特点/元字符/正则表达式中的标志位-flag/RegExp/重复操作与后向引用/匹配模式/表达邮箱/正则表达式对象的方法/利用正则表达式限制网页表单里的文本框输入内容
文章目录 正则表达式: 正则表达式的用途 正则表达式的组成-元字符 正则表达式的特点 正则表达式中的标志位-flag JavaScript中的正则表达式解析 RegExp 定义 RegExp RegE ...
- TextBox文本框与PasswordBox密码框水印
在开发一个软件和网页的时候,都会有一个功能,那就是登陆功能,有了登陆那就一定需要用户输入账号和密码,我们在写登陆页面都会想到使用TextBox和PasswordBox去完成这两个功能,但是有一个问题, ...
- java 限制文本框长度_java中限制文本框输入长度的显示(转载)
我最近在网上看到一篇文章很不错,对于限制文本框输入长度的显示很方便 JAVA不像C#能够有maxLength这个属性对文本框的输入长度进行控制,但也是有办法实现相应的功能的. 写一个MyDocumen ...
- 简单的文本框输入实时计数
2019独角兽企业重金招聘Python工程师标准>>> 简单的文本框输入实时计数 $(function(){suminput('idea','60');})//记录输入字符方法fun ...
最新文章
- RDKit | 小分子构象的生成和比对
- 【Boost】boost库中function的用法
- 2021年高考成绩查询贵州分数线,2021年贵州省高考分数线
- IBM挺进云计算 自家内采用私有云模式
- np读取csv文件_被 Pandas read_csv 坑了
- 快乐大本营中测试声音年龄的软件_海天味极鲜酱油极限挑战宝藏行 终极试炼,极限成员们勇登珠峰大本营...
- Java使用笔记之stream和sorted使用
- Perl的模块判断及安装
- sql优化的几种方法
- minicom 使用方法
- 百行代码,轻松实现机器人语音对话
- 一键DDOS防火墙安装程序
- 第二章使用VLAN隔离广播域
- C++C++ 编写GoFGoF设计模式里Lexi样例
- 报表技术2(百万数据导入导出,POI操作word)
- ROS学习第三天 ROS的通讯机制
- Android 高德地图计算 Circle 计算上下左右四个点经纬度,Circle和Polygon是否全部包含,计算地图中点到线的最短距离
- FileNotFoundException open failed: XXXXXXX EPERM (Operation not permitted)的坑
- Vertx DNS解析源码
- linux nvidia 361.run,Ubuntu 16.04+Nvidia GTX 1080+CUDA8.0 深度学习环境配置