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文本框输入格式相关推荐

  1. C# TextBox文本框只能输入数字、小数点(最大到2位)、退格键、负号

    要实现TextBox文本框输入限制 ,先要为TextBox添加KeyPress事件. 代码如下: //数字.小数点(最大到2位).退格键.负号private void textBox1_KeyPres ...

  2. [正则表达式]文本框输入内容控制

    整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n}$". 只能输入至少n ...

  3. Java集合框架上机练习题:用户分别从两个文本框输入学生的姓名和分数.............

    编写一个应用程序,用户分别从两个文本框输入学生的姓名和分数,程序按成绩排序将这些学生的姓名和分数显示在一个文本区中. import java.awt.FlowLayout; import java.a ...

  4. VB 小技巧自定义TextBox文本框右键菜单

    'TextBox单击鼠标右键总是跟出来一个系统默认的关于文本操作的菜单,如何把它去掉?请看如下代码. Private Sub Text1_MouseDown(Button As Integer, Sh ...

  5. VB 提取TextBox 文本框中指定一行字符串

    这是使用EM_GETLINE message来做,比较奇特的是lParam是指向一个字串所在的位置, 但是该字串传入时,前两个Byte要存该字串允许的最大长度. '以下在Form需一个TextBox, ...

  6. 【超详总结/理解:正则表达式】特点/元字符/正则表达式中的标志位-flag/RegExp/重复操作与后向引用/匹配模式/表达邮箱/正则表达式对象的方法/利用正则表达式限制网页表单里的文本框输入内容

    文章目录 正则表达式: 正则表达式的用途 正则表达式的组成-元字符 正则表达式的特点 正则表达式中的标志位-flag JavaScript中的正则表达式解析 RegExp 定义 RegExp RegE ...

  7. TextBox文本框与PasswordBox密码框水印

    在开发一个软件和网页的时候,都会有一个功能,那就是登陆功能,有了登陆那就一定需要用户输入账号和密码,我们在写登陆页面都会想到使用TextBox和PasswordBox去完成这两个功能,但是有一个问题, ...

  8. java 限制文本框长度_java中限制文本框输入长度的显示(转载)

    我最近在网上看到一篇文章很不错,对于限制文本框输入长度的显示很方便 JAVA不像C#能够有maxLength这个属性对文本框的输入长度进行控制,但也是有办法实现相应的功能的. 写一个MyDocumen ...

  9. 简单的文本框输入实时计数

    2019独角兽企业重金招聘Python工程师标准>>> 简单的文本框输入实时计数 $(function(){suminput('idea','60');})//记录输入字符方法fun ...

最新文章

  1. RDKit | 小分子构象的生成和比对
  2. 【Boost】boost库中function的用法
  3. 2021年高考成绩查询贵州分数线,2021年贵州省高考分数线
  4. IBM挺进云计算 自家内采用私有云模式
  5. np读取csv文件_被 Pandas read_csv 坑了
  6. 快乐大本营中测试声音年龄的软件_海天味极鲜酱油极限挑战宝藏行 终极试炼,极限成员们勇登珠峰大本营...
  7. Java使用笔记之stream和sorted使用
  8. Perl的模块判断及安装
  9. sql优化的几种方法
  10. minicom 使用方法
  11. 百行代码,轻松实现机器人语音对话
  12. 一键DDOS防火墙安装程序
  13. 第二章使用VLAN隔离广播域
  14. C++C++ 编写GoFGoF设计模式里Lexi样例
  15. 报表技术2(百万数据导入导出,POI操作word)
  16. ROS学习第三天 ROS的通讯机制
  17. Android 高德地图计算 Circle 计算上下左右四个点经纬度,Circle和Polygon是否全部包含,计算地图中点到线的最短距离
  18. FileNotFoundException open failed: XXXXXXX EPERM (Operation not permitted)的坑
  19. Vertx DNS解析源码
  20. linux nvidia 361.run,Ubuntu 16.04+Nvidia GTX 1080+CUDA8.0 深度学习环境配置

热门文章

  1. 收费邮箱价格及容量对比,收费邮箱与免费邮箱的区别?
  2. 代码高处走 从VC6到VC9移植代码问题说明
  3. 史上最全电磁仿真(HFSS、CST、FEKO)时域、频域精准配置推荐
  4. in作为介词的用法_中考英语知识点:介词in的常见用法
  5. Linux注意之重置mysql账号密码
  6. 【R语言】——火山图绘制
  7. 中创易票通打印票据支票 v2.3 bt
  8. 同花顺股票交易接口的编写POST接口
  9. 分账系统多少钱?是如何收费的?
  10. 866数据结构重点内容