SusNumberInput

Числовое поле со spin-кнопками — min / max / step / precision.
Пакет
SusKit · Атомы (коммерческий)
Свойства
| Имя | Тип | По умолчанию | |
|---|---|---|---|
Model | Prop<float> | 0f | v-model |
Min | Prop<float> | 0f | v-model |
Max | Prop<float> | 100f | v-model |
Step | Prop<float> | 1f | v-model |
Precision | Prop<int> | 0 | v-model |
Label | Prop<string> | "" | v-model |
Hint | Prop<string> | "" | v-model |
Error | Prop<string> | "" | v-model |
Variant | Prop<string> | "outlined" | v-model |
Density | Prop<string> | "default" | v-model |
Disabled | Prop<bool> | false | v-model |
Readonly | Prop<bool> | false | v-model |
HideSpinButtons | Prop<bool> | false | v-model |
Слоты
Слотов нет.
События
| Имя | Поле | Payload |
|---|---|---|
Change | OnChange | float |
Хуки стиля
Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:
sus-number-inputsus-number-input__controlsus-number-input__errorsus-number-input__fieldsus-number-input__hintsus-number-input__labelsus-number-input__spinsus-number-input__spin-iconsus-number-input--density-comfortablesus-number-input--density-compactsus-number-input--disabledsus-number-input--errorsus-number-input--filledsus-number-input--focusedsus-number-input--hide-spinsus-number-input--outlinedsus-number-input--readonlyunity-base-text-fieldunity-base-text-field__inputunity-labelunity-text-elementunity-text-field
Использование
xml
<template>
<sus:SusNumberInput Label="Party size"
:Model="PartySize.Value"
Min="1"
Max="8"
Step="1"
Variant="outlined"
@change="OnPartySize" />
</template>
<script>
public Prop<float> PartySize = new(4f);
void OnPartySize(float value) { /* … */ }
</script>csharp
var num = new SusNumberInput();
num.Label.Value = "Quantity";
num.Model.Value = 1f;
num.Min.Value = 0f;
num.Max.Value = 99f;
num.Step.Value = 1f;
num.OnChange += value => { /* … */ };Заметки
HideSpinButtonsоставляет только ввод с клавиатуры, без +/- кнопок.Precisionуправляет количеством знаков после запятой в отформатированном поле.