KryptonNumericUpDown ✓ LCode 已集成 Toolkit
命名空间:Krypton.Toolkit · 程序集:Krypton.Toolkit.dll
简介
KryptonNumericUpDown 是增强型数字微调框控件,替代标准 System.Windows.Forms.NumericUpDown。它由文本框与上下箭头按钮组成,只接受限定范围内的数值,支持小数位数、千分位分隔符、十六进制显示等,适合数量、金额、参数阈值等数值录入场景。
常用属性
| 属性 | 类型 | 说明 |
|---|---|---|
Value | decimal | 当前数值 |
Minimum | decimal | 允许的最小值(默认 0) |
Maximum | decimal | 允许的最大值(默认 100) |
Increment | decimal | 点击箭头时的步进值(默认 1) |
DecimalPlaces | int | 显示的小数位数(默认 0) |
ThousandsSeparator | bool | 是否显示千分位分隔符 |
Hexadecimal | bool | 是否以十六进制显示 |
UpDownAlign | LeftRightAlignment | 箭头按钮位置(Left / Right) |
InterceptArrowKeys | bool | 方向键 ↑↓ 是否调整数值 |
ReadOnly | bool | 是否只读(仅能用箭头调整) |
StateCommon.Content.Color1 | Color | 数值文字颜色 |
StateCommon.Border.Color1 | Color | 边框颜色 |
快速上手
基本用法
using Krypton.Toolkit;
var numQty = new KryptonNumericUpDown();
numQty.Location = new Point(16, 16);
numQty.Size = new Size(120, 26);
numQty.Minimum = 1;
numQty.Maximum = 9999;
numQty.Value = 1;
// 数值改变事件
numQty.ValueChanged += (s, e) =>
lblTotal.Text = $"金额:{numQty.Value * 19.9m:C}";
this.Controls.Add(numQty);
小数与千分位
var numPrice = new KryptonNumericUpDown();
numPrice.DecimalPlaces = 2; // 两位小数
numPrice.Increment = 0.5m; // 步进 0.5
numPrice.ThousandsSeparator = true; // 显示千分位
numPrice.Maximum = 1000000m;
进阶用法
程序化调整数值
// 模拟点击上下箭头(自动受 Min/Max 约束)
numQty.UpButton();
numQty.DownButton();
// 直接赋值(超出范围会被自动钳制到边界)
numQty.Value = 500;
十六进制颜色值录入
var numHex = new KryptonNumericUpDown();
numHex.Hexadecimal = true; // 以十六进制显示
numHex.Minimum = 0;
numHex.Maximum = 255; // 0x00 ~ 0xFF
numHex.Value = 255; // 显示为 FF
numHex.ValueChanged += (s, e) =>
Console.WriteLine($"当前值:0x{(int)numHex.Value:X2}");
提示:
Value 类型是 decimal;若需要纯文本列表循环(如「高 / 中 / 低」),请改用 KryptonDomainUpDown。
对应示例项目
📁 Source/Krypton Toolkit Examples/KryptonNumericUpDown Examples/
包含:范围与步进、小数/千分位、十六进制显示演示。