SusCheckbox

Булев контрол с label — checked, indeterminate, текст ошибки.
Пакет
SusKit · Атомы (коммерческий)
Свойства
| Имя | Тип | По умолчанию | |
|---|---|---|---|
Model | Prop<bool> | false | v-model |
Label | Prop<string> | "" | v-model |
Color | Prop<string> | "primary" | v-model |
Disabled | Prop<bool> | false | v-model |
Readonly | Prop<bool> | false | v-model |
Indeterminate | Prop<bool> | false | v-model |
Density | Prop<string> | "default" | v-model |
Error | Prop<string> | "" | v-model |
HideDetails | Prop<string> | "auto" | v-model |
Слоты
Слотов нет.
События
| Имя | Поле | Payload |
|---|---|---|
Change | OnChange | bool |
Хуки стиля
Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:
keyboard-focussus-checkboxsus-checkbox__detailssus-checkbox__iconsus-checkbox__inputsus-checkbox__labelsus-checkbox--checkedsus-checkbox--dangersus-checkbox--density-comfortablesus-checkbox--density-compactsus-checkbox--density-defaultsus-checkbox--dirtysus-checkbox--disabledsus-checkbox--errorsus-checkbox--indeterminatesus-checkbox--primarysus-checkbox--readonlysus-checkbox--secondarysus-checkbox--successsus-checkbox--warning
Использование
xml
<template>
<sus:SusCheckbox Label="Accept terms"
:Model="Accepted.Value"
Color="primary"
@change="OnAccepted" />
</template>
<script>
public Prop<bool> Accepted = new(false);
void OnAccepted(bool value) { /* … */ }
</script>csharp
var check = new SusCheckbox();
check.Label.Value = "Remember me";
check.Model.Value = false;
check.Color.Value = "primary";
check.OnChange += value => { /* … */ };
// Partial state: check.Indeterminate.Value = true;Заметки
Indeterminateпоказывает смешанное состояние (например, «выбраны не все дочерние элементы»).Error+HideDetailsследуют тому же паттерну form-field, что и текстовые поля ввода.