VS2022文本框的控制输入

老问题新玩法,VS2022 C# 文本框的控制输入,多文本框输入控制相同

  • 一、只允许输入正整数
    • 1、在 _textID 文本框中添加 KeyPress 事件
    • 2、在 _textID 文本框 KeyPress 事件添加代码
  • 二、只允许输入正数、负数,小数点不能是第一位,负号必须第一位,可以回退键删除
    • 1、在 _textINPUT 文本框中添加KeyPress事件
    • 2、在 _textINPUT 文本框 KeyPress事件添加代码
  • 三、有多个文本框需要控制相同的输入条件

一、只允许输入正整数

1、在 _textID 文本框中添加 KeyPress 事件

2、在 _textID 文本框 KeyPress 事件添加代码

        private void _textID_KeyPress(object sender, KeyPressEventArgs e){char ch = e.KeyChar;if (!char.IsDigit(ch) && ch != 8) // 只允许输入数字和回退键{e.Handled = true;}}

二、只允许输入正数、负数,小数点不能是第一位,负号必须第一位,可以回退键删除

1、在 _textINPUT 文本框中添加KeyPress事件

2、在 _textINPUT 文本框 KeyPress事件添加代码

C# 文本框的控制输入以前通常的方法:

//负号只能第一位输入,且只能输入一次
if (e.KeyChar == 45 && (((TextBox)sender).SelectionStart != 0 || ((TextBox)sender).Text.IndexOf("-") >= 0)) 
{e.Handled = true;
}
//小数点只能输入一次
if (e.KeyChar == 46 && ((TextBox)sender).Text.IndexOf(".") >= 0) e.Handled = true;

上面代码小数点可以出现在负号后面,语句不严谨,VS2022提示简化语言,按规则修改:

  private void _textINPUT_KeyPress(object sender, KeyPressEventArgs e){char ch = e.KeyChar;//键字string input = ((TextBox)sender).Text;//输入的文本内容int one = ((TextBox)sender).SelectionStart;//文本框输入位置//只允许数字、回退键char(8)、负号- char(45)、小数点. char(46)if (!Char.IsDigit(ch) && ch != 8 && ch != 45 && ch != 46) e.Handled = true;//小数点只能输1次、不能在第一位,小数点不能在负号后if (ch == 46 && (input.Contains('.') || input == "" || input == "-")) e.Handled = true; //负号只能第一位输入,且只能输入一次if (ch == 45 && (one != 0 || input.Contains('-'))) e.Handled = true;}

修改测试通过验证!

三、有多个文本框需要控制相同的输入条件

古老复杂的笨办法,为多个文本框添加自己的KeyPress事件,把相同的代码复制到各自 KeyPress 事件中。

在VS2022中,在需要只允许输入正数、负数,小数点不能是第一位,负号必须第一位,可以回退键删除,这些控制相同的输入条件,在文本框事件中,都可以选择 _textINPUT_KeyPress 事件,事件相同,控制相同。

在其它只允许输入正整数的文本框中,选择 _textID_KeyPress 事件即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/27590.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【JS重点10】箭头函数(十分重要)

目录 本文章重点: 一:箭头函数 目的: 使用场景: 语法: 箭头函数参数 箭头函数this 二:箭头函数与普通函数区别 本文章重点: 能够熟练写出箭头函数的不同写法 清楚的知道箭头函数与普通…

Java开发中的常用字段校验注解

在 Java 开发中,数据校验是确保应用程序的数据完整性和一致性的重要步骤。Java 提供了一系列注解来简化数据校验的过程,以下是一些常用的字段校验注解及其示例代码: NotNull NotNull 用于确保字段不为 null,适用于任何类型的字段…

L49---2154. 将找到的值乘以 2(排序)---Java版

1.题目描述 给你一个整数数组 nums ,另给你一个整数 original ,这是需要在 nums 中搜索的第一个数字。 接下来,你需要按下述步骤操作: 如果在 nums 中找到 original ,将 original 乘以 2 ,得到新 origin…

C#——正则表达式详情

正则表达式 正则表达式: 列如判断一个字符串是不是手机号,或者密码是否包含大小写数字等这些要求,可以把这些条件写成一个表达式 创建正则表达式 string s1 "1234adsab1KHGFJD"; // 创建正则时需要在字符串前面加上 Regex r new Regex(&q…

NettyのNIOBIO原理解析

1、IO模型 在IO模型中,主要可分为同步与异步操作: 在同步 I/O 模型中,I/O 操作是阻塞的,当一个进程或线程执行 I/O 操作时,它会一直等待这个操作完成才继续执行后续的代码。 在异步 I/O 模型中,I/O 操作是非…

Shiro有key但无回显利用链子-JRMP大法

前言 shiro在手天下我有,扫出key直接梭哈getshell,横扫内网。但要是像这种情况,直接下班拜拜跑路,没有链子玩毛线… 直到出现了这么一个工具可以通过JRMP协议探测是否存在漏洞,很显然上面工具是做不到的,实…

Cheat Engine 学习

文章目录 Exact Value scanning任务实现步骤Unknown initial value任务实现步骤原理说明Floating points任务实现步骤原理说明Code finder任务实现步骤原理说明Pointers任务实现步骤原理说明Change Pointer 操作:Active(活跃状态)和数值修改:Code Injection任务概述实现步骤…

2024年【四川省安全员C证】考试题及四川省安全员C证考试资料

题库来源:安全生产模拟考试一点通公众号小程序 四川省安全员C证考试题是安全生产模拟考试一点通总题库中生成的一套四川省安全员C证考试资料,安全生产模拟考试一点通上四川省安全员C证作业手机同步练习。2024年【四川省安全员C证】考试题及四川省安全员…

算法训练 | 动态规划Part2 | 62.不同路径、63.不同路径 II

目录 62.不同路径 动态规划法 63. 不同路径 II 动态规划法 62.不同路径 题目链接:62. 不同路径 - 力扣(LeetCode) 文章讲解:代码随想录 动态规划法 解题思路 机器人从(0 , 0) 位置出发,到(m - 1, n - 1)终点。…

博客没人看啊?我分析是这些原因

1.封面 主题封面还是个性化封面?主题封面对系列化很友好,如下图左: 在目录中什么主题一目了然,个性化封面在目录中就略显杂乱。但是通过观察CSDN主页发现热榜文章清一色个性化封面。如果使文字封面就会显得很无聊。 所以从提高浏…

赶紧收藏!2024 年最常见 20道并发编程面试题(七)

上一篇地址:赶紧收藏!2024 年最常见 20道并发编程面试题(六)-CSDN博客 十三、什么是线程局部存储(Thread-Local Storage)? 线程局部存储(Thread-Local Storage,简称TLS…

[渗透测试学习] IClean-HackTheBox

IClean-HackTheBox 信息搜集 nmap扫描一下 nmap -sV -v 10.10.11.12 -Pn扫描结果 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.6 (Ubuntu Linux; protocol 2.0) 80/tcp open http Apache httpd 2.4.52 ((Ubuntu)) Service Info:…

Ubuntu 22.04,把软件更新源更改为阿里或者清华镜像

通常这应该是装上系统后做的第一件事,阿里/清华二选一,本人亲测,可以成功 可以通过修改系统的/etc/apt/sources.list文件来完成。以下是详细步骤: 修改/etc/apt/sources.list 打开终端。 备份当前的/etc/apt/sources.list文件&…

WPF第三方开源UI框架:打造独特体验的魔法师

引言 在WPF(Windows Presentation Foundation)的世界中,除了微软提供的原生控件,还有许多第三方开源UI框架为开发者提供了更广阔的天地。这些框架以其创新和灵活性,帮助开发者打造出与众不同的用户体验。本文将带您走进…

HashMap 源码解析

1. 基本结构 HashMap 的核心是一个数组&#xff0c;每个数组元素是一个链表或红黑树&#xff08;JDK 1.8 及以后&#xff09;。当哈希冲突发生时&#xff0c;链表或红黑树用于存储多个键值对。 // HashMap的基本结构 public class HashMap<K, V> extends AbstractMap&l…

Jenkins三种构建类型

目录 传送门前言一、概念二、前置处理&#xff08;必做&#xff09;1、赋予777权限2、让jenkins用户拥有root用户的kill权限3、要运行jar包端口号需要大于1024 三、自由风格软件项目&#xff08;FreeStyle Project&#xff09;&#xff08;推荐&#xff09;三、Maven项目&#…

金融科技:推动保险行业数字化转型的引擎

随着科技的飞速发展&#xff0c;金融科技&#xff08;FinTech&#xff09;已经成为推动金融行业变革的重要力量。特别是在保险行业&#xff0c;金融科技正引领着一场深刻的数字化转型&#xff0c;为保险公司带来了前所未有的机遇与挑战。本文将探讨金融科技如何推动保险行业的数…

UDP 协议详解与实战

目录 简介什么是 UDP&#xff1f;UDP 与 TCP 的区别 UDP 数据传输方式单播 - Unicast&#xff08;1:1&#xff09;广播 - Broadcast&#xff08;1:n&#xff09;有限广播 - Limited Broadcast直接广播 - Directed Broadcast 组/多播 - Multicast&#xff08;n:m&#xff09;任播…

屹晶微EG3002 单通道功率MOSFET驱动芯片 贴片SOP8

EG3002作为一款功率MOSFET驱动芯片&#xff0c;它的应用领域主要取决于其技术参数和性能特点。根据之前提供的信息&#xff0c;EG3002可能适用于以下领域&#xff1a; 1. 电源管理&#xff1a;用于高效率电源转换器&#xff0c;如开关电源&#xff08;SMPS&#xff09;、电池充…

栈的实现详解

目录 1. 栈1.1 栈的概念及结构1.2 栈的实现方式1.3 栈的应用场景 2. 栈的实现2.1 结构体2.2 初始化2.3 销毁2.4 入栈2.5 出栈2.6 获取栈顶元素2.7 判空2.8 获取个数 3. test主函数4. Stack.c文件5. Stack.h文件6. 运行展示 1. 栈 1.1 栈的概念及结构 栈&#xff1a;一种特殊的…