К содержимому

SusCheckbox

SusCheckbox

Булев контрол с label — checked, indeterminate, текст ошибки.

Пакет

SusKit · Атомы (коммерческий)

Открыть в песочнице

SusKit · Atoms

Свойства

ИмяТипПо умолчанию
ModelProp<bool>falsev-model
LabelProp<string>""v-model
ColorProp<string>"primary"v-model
DisabledProp<bool>falsev-model
ReadonlyProp<bool>falsev-model
IndeterminateProp<bool>falsev-model
DensityProp<string>"default"v-model
ErrorProp<string>""v-model
HideDetailsProp<string>"auto"v-model

Слоты

Слотов нет.

События

ИмяПолеPayload
ChangeOnChangebool

Хуки стиля

Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:

  • keyboard-focus
  • sus-checkbox
  • sus-checkbox__details
  • sus-checkbox__icon
  • sus-checkbox__input
  • sus-checkbox__label
  • sus-checkbox--checked
  • sus-checkbox--danger
  • sus-checkbox--density-comfortable
  • sus-checkbox--density-compact
  • sus-checkbox--density-default
  • sus-checkbox--dirty
  • sus-checkbox--disabled
  • sus-checkbox--error
  • sus-checkbox--indeterminate
  • sus-checkbox--primary
  • sus-checkbox--readonly
  • sus-checkbox--secondary
  • sus-checkbox--success
  • sus-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, что и текстовые поля ввода.