找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2667|回复: 12

Winform 只能输入整数的TextBox (文本框) 控件

 火.. [复制链接]
  • 打卡等级:即来则安
  • 打卡总天数:29
  • 打卡月天数:1
  • 打卡总奖励:7791
  • 最近打卡:2025-12-13 17:25:16

2540

主题

1353

回帖

2万

积分

管理员

积分
21301
发表于 2021-10-5 15:15:54 | 显示全部楼层 |阅读模式
Winform 只能输入整数的TextBox (文本框) 控件
  1. using System;
  2. using System.Windows.Forms;

  3. namespace DemoWinForm
  4. {
  5.     public partial class Form1 : Form
  6.     {
  7.         public Form1()
  8.         {
  9.             InitializeComponent();
  10.         }
  11.     }

  12.     /// <summary>
  13.     /// 文本框 - 只能输入整数
  14.     /// 禁止粘贴
  15.     /// </summary>
  16.     public class TextBoxExInt : TextBox
  17.     {
  18.         /// <summary>
  19.         /// 构造函数
  20.         /// </summary>
  21.         public TextBoxExInt()
  22.         {
  23.         }

  24.         #region 禁止粘贴
  25.         /// <summary>
  26.         /// 重写基类的WndProc方法
  27.         /// </summary>
  28.         /// <param name="m"></param>
  29.         protected override void WndProc(ref Message m)
  30.         {
  31.             if (m.Msg == 0x0302)            // 0x0302是粘贴消息
  32.             {
  33.                 m.Result = IntPtr.Zero;     // 拦截此消息
  34.                 return;
  35.             }
  36.             base.WndProc(ref m);            // 若此消息不是粘贴消息,则交给其基类去处理
  37.         }
  38.         #endregion

  39.         #region 重写方法
  40.         /// <summary>
  41.         /// 重写方法
  42.         /// 只能输入整型
  43.         /// </summary>
  44.         /// <param name="e"></param>
  45.         protected override void OnKeyPress(KeyPressEventArgs e)
  46.         {
  47.             base.OnKeyPress(e);
  48.             if (e.KeyChar != '\b')// 允许输入退格键
  49.             {
  50.                 // 最多8位数金额
  51.                 if (this.Text.Length == 8) { e.Handled = true; }

  52.                 // 只允许输入0-9数字
  53.                 if ((e.KeyChar < '0') || (e.KeyChar > '9'))
  54.                 {
  55.                     e.Handled = true;
  56.                 }
  57.             }
  58.         }
  59.         #endregion
  60.     }
  61. }
复制代码




工控课堂 www.gkket.com

0

主题

132

回帖

304

积分

注册会员

积分
304
发表于 2021-10-5 17:09:01 | 显示全部楼层
感恩无私的分享与奉献
工控课堂 www.gkket.com

0

主题

85

回帖

286

积分

注册会员

积分
286
发表于 2021-10-5 22:54:29 | 显示全部楼层
加油,加油,不要沉下去,我是最热贴
工控课堂 www.gkket.com

0

主题

87

回帖

130

积分

新手上路

积分
130
发表于 2025-11-12 14:46:29 | 显示全部楼层
理性围观,感觉大家说的都有道理~
工控课堂 www.gkket.com

0

主题

84

回帖

124

积分

新手上路

积分
124
发表于 2025-11-12 17:08:27 | 显示全部楼层
评论区人才辈出,笑到停不下来😂
工控课堂 www.gkket.com

0

主题

94

回帖

138

积分

新手上路

积分
138
发表于 2025-11-12 17:24:07 | 显示全部楼层
来凑个热闹,为楼主增加点人气!
工控课堂 www.gkket.com

0

主题

58

回帖

76

积分

新手上路

积分
76
发表于 2025-11-12 17:40:50 | 显示全部楼层
救命!这波发言太秀了,直接原地封神~
疯狂认同!楼主说出了我不敢说的话
工控课堂 www.gkket.com

0

主题

79

回帖

120

积分

新手上路

积分
120
发表于 2025-11-12 18:03:00 | 显示全部楼层
浅评一下:内容优质,值得推荐~
工控课堂 www.gkket.com

0

主题

99

回帖

149

积分

新手上路

积分
149
发表于 2025-11-12 19:25:43 | 显示全部楼层
来凑个热闹,增加点人气~
工控课堂 www.gkket.com

0

主题

79

回帖

121

积分

新手上路

积分
121
发表于 2025-11-16 22:12:21 | 显示全部楼层
浅蹲一个后续,楼主更新踢我一下
工控课堂 www.gkket.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|手机版|免责声明|本站介绍|工控课堂 ( 沪ICP备20008691号-1 )

GMT+8, 2025-12-22 12:52 , Processed in 0.082114 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表