winform 限制TextBox中只能输入正整数

txt_n是文本框的名字

cs 复制代码
       private void txt_n_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar != '\b')//这是允许输入退格键 
            {
                int len = txt_n.Text.Length;
                if (len < 1 && e.KeyChar == '0')
                {
                    e.Handled = true ;
                }
                else if ((e.KeyChar < '0') || (e.KeyChar > '9'))//这是允许输入0-9数字 
                {
                    e.Handled = true;
                }

            }
        }

KeyPressEventArgs.Handled 属性

获取或设置一个值,该值指示是否处理过 KeyPress 事件。

属性值

类型:System.Boolean

如果处理过事件,则为 true;否则为 false。

解释:

就是说如果将Handled 设为True,那么KeyPress事件将会取消,这样就是说你按下了某个个按键了,但是系统不处理了,等于没按!

sender表示被触发的那个事件的那个控件的对象

相关推荐
鱼听禅3 小时前
C#学习笔记-Entity Framework Core基础操作学习
c#·orm·ef core
Z5998178414 小时前
c#软件开发学习笔记--分组、游标与临时表、分页
笔记·学习·c#
rick9774 小时前
用 C# 从零搭建本地知识库:RAG 系统完整实战
c#
Z5998178416 小时前
c#软件开发学习笔记--事务、索引
笔记·学习·c#
geovindu6 小时前
CSharp: Composite Pattern
开发语言·后端·c#·组合模式·结构型模式
LeoTao6 小时前
C#专题-C# 异常处理
c#
影寂ldy6 小时前
C# 多线程进阶知识点(线程优先级、多委托传参、线程锁、死锁)
开发语言·数据库·c#
wrq1471 天前
MyAccess 完整使用手册
c#·orm框架
z落落1 天前
C# WinForm 自定义控件
开发语言·c#