当前位置: 首页 > java >正文

WinForm真入门(17)——NumericUpDown控件详解

一、基本概念‌

NumericUpDown 是 Windows 窗体中用于数值输入的控件,由文本框和上下调节按钮组成。用户可通过以下方式调整数值:

  • 点击调节按钮增减数值
  • 键盘直接输入
  • 使用方向键调整
    适用于需要限制数值范围或精确控制的场景(如年龄、参数配置、数量选择等)。

‌二、核心属性‌

1‌、数值范围控制‌

  • Minimum:允许的最小值(默认 0)
  • Maximum:允许的最大值(默认 100)
  • Value:当前显示的数值(默认 0)
  • Increment:点击调节按钮时的增减步长(默认 1)

2‌、显示格式控制‌

  • DecimalPlaces:设置小数位数(如 2 表示显示两位小数)
  • ThousandsSeparator:启用千位分隔符(如 1,000)

3‌、交互控制‌

  • ReadOnly:禁止用户直接输入(仅允许按钮调节)
  • InterceptArrowKeys:启用方向键控制数值增减(默认 true)

三、常用方法‌

  • UpButton():模拟点击“向上”按钮,增加数值
  • DownButton():模拟点击“向下”按钮,减少数值
  • UpdateEditText():强制更新文本框显示(如自定义格式化后调用)

‌四、使用案例‌

1‌、限制输入范围与步长‌

numericUpDown1.Minimum = 0;
numericUpDown1.Maximum = 1000;
numericUpDown1.Increment = 10;  // 每次增减10:ml-citation{ref="1,6" data="citationList"}

‌2、格式化显示数值‌

numericUpDown1.DecimalPlaces = 2;     // 显示两位小数
numericUpDown1.ThousandsSeparator = true;  // 显示千位分隔符:ml-citation{ref="1,6" data="citationList"}

‌3、实时更新界面‌

private void numericUpDown1_ValueChanged(object sender, EventArgs e) {label1.Text = "当前值:" + numericUpDown1.Value.ToString("N2"); // 带两位小数格式化:ml-citation{ref="1,7" data="citationList"}
}

4‌、禁用非数字输入‌

numericUpDown1.KeyPress += (s, e) => {if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar)) {e.Handled = true;  // 拦截非数字输入:ml-citation{ref="6,8" data="citationList"}}
};
http://www.xdnf.cn/news/2315.html

相关文章:

  • 【JavaScript】关系运算符--非数值类型、Unicode编码表
  • BG开发者日志0427:故事的起点
  • android ams调试指令介绍
  • 【数据结构】·励志大厂版(复习+刷题):二叉树
  • 从零搭建云原生后端系统 —— 一次真实项目实践分享
  • django admin 中更新表数据 之后再将数据返回管理界面
  • python+flask+flask-sockerio,部署后sockerio通信异常
  • vue中将html2canvas转成的图片传递给后台 Python Flask 服务
  • C#中属性和字段的区别
  • 毕业设计-基于机器学习入侵检测系统
  • Java学习手册:Java开发常用的内置工具类包
  • c语言知识整理
  • ADC单通道采集实验
  • 农经权利用mdb与dbf生成公示表
  • 上位机知识篇---寻址方式
  • 通过gap看margin和padding在布局中的应用
  • 摩尔投票法详细介绍
  • void指针为何能幻化有数据类型?
  • Linux下的I/O复用技术之epoll
  • Linux:进程间通信->命名管道
  • 【WSL】wsl2出现Exec format error的解决办法
  • 矫平机终极指南:特殊材料处理、工艺链协同与全球供应链管理
  • Java 线程的六种状态与完整生命周期详解
  • YOLOv8改进新路径:Damo-YOLO与Dyhead融合的创新检测策略
  • C语言学习之调试
  • 小白自学python第三天
  • 当高级辅助驾驶遇上“安全驾校”:NVIDIA如何用技术给无人驾驶赋能?
  • Python类和对象四(十三)
  • 2025雅思口语工具Top10:AI软件真实测评
  • 在springboot项目中,如何进行excel表格的导入导出功能?