# SelectNumber 数字选择器

`SelectNumber` 是数字输入框与下拉选择器的组合，适合选择页码、数量、分数、百分比等可输入也可选的数字。

## 最小示例

```aardio
import win.ui;
import dotNet.AntdUI;
/*DSG{{*/
var winform = win.form(text="AntdUI SelectNumber";right=380;bottom=160)
winform.add(
host={cls="custom";left=0;top=0;right=380;bottom=32;edge=1;z=1}
)
/*}}*/

var sel = AntdUI.SelectNumber(winform.host);
sel.Minimum = 0;
sel.Maximum = 100;
sel.Value = 10;
sel.Increment = 5;
sel.DecimalPlaces = 0;
sel.PlaceholderText = "选择或输入数字";

sel.addItems([10,20,"50"])

// 或者逐个添加，用字符串可以指定更大的数值（ 128 位浮点数范围）
// sel.Items.Add(10);
// sel.Items.Add(20);
// sel.Items.Add("50");
sel.ValueChanged = function(sender,e){
	
	// sel.Value (owner.Value) 是 System.Decimal 对象（128 位浮点数）。
    winform.text = "当前值：" + tostring(owner.Value);
}

winform.show();
win.loopMessage();
```

sel.addItems 这个方法要小写首字母，这暗示它是由 aardio 扩展并新增的函数。  

> .NET 方法通常小写方法名的首字母，而 aardio 通常小写方法名的首字母。

## 常用属性与事件

- `Value`：当前数字，.NET 里的  System.Decimal 对象（128 位浮点数）。可用 tostring 将其转换为字符串，或者用 tonumber 将其转换为普通数值（64 位浮点数）。
- `Minimum`、`Maximum`：数字范围。
- `Increment`：步长。
- `DecimalPlaces`、`ThousandsSeparator`：格式化数字。
- `Items`：下拉候选项集合，可添加字符串或 SelectItem。
- `SelectedIndex`、`SelectedValue`：下拉选中项。
- `AllowClear`、`DropDownArrow`、`Placement`：清除按钮、箭头与弹出位置。
- `ValueChanged`、`SelectedValueChanged`：数字/选项变化事件。

## 注意事项

- `SelectNumber` 同时继承数字输入与下拉选择特性，属性较多；常用场景优先关注范围、步长、候选项与 ValueChanged。
- 仅需要纯数字录入时，用 InputNumber 更简单。