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

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"}}
};

相关文章:

  • 全星APQP软件系统:驱动芯片半导体行业研发管理迈向高效与合规新高度
  • 每日算法-250427
  • 【Pandas】pandas DataFrame rtruediv
  • 2025.4.22 JavaScript 常用事件学习笔记
  • 开源财务软件:企业财务数字化转型的有力工具
  • TensorFlow 安装全攻略
  • Shell脚本-until语法结构
  • 香港GPU显卡服务器与GPU云服务器的区别
  • Tomcat的安装与配置
  • 【C++详解】C++入门(二)引用、内联函数、nullptr宏
  • Spark-Streaming核心编程:有状态转化操作与DStream输出
  • 高中数学联赛模拟试题精选第13套几何题
  • 【PyCharm- Python- ArcGIS】:安装一个和 ArcGIS 不冲突的独立 Python让PyCharm 使用 (解决全过程记录)
  • 第1讲、#PyTorch教学环境搭建与Tensor基础操作详解
  • 函数的使用
  • docker compose -p的踩坑经验
  • cached-property - 类属性缓存装饰器
  • 再学GPIO(二)
  • Milvus(8):密集向量、二进制向量、稀疏向量
  • 【Jupyter 启动时如何指定目录】
  • 绵阳造AI机器狗参与警务工作,演练中辅助民警控制“嫌疑人员”
  • 子公司神州信息十年来首次亏损,神州控股遭国有股东广州城投派驻董事问责
  • 如何做大中国拳击产业的蛋糕?这项赛事给出办赛新思考
  • 时代邻里:拟收购成都合达联行科技剩余20%股权
  • 广州多条BRT相关线路将停运,全市BRT客运量较高峰时大幅下降
  • 民生访谈|公共数据如何既开放又安全?政务领域如何适度运用人工智能?