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

SusRadio

SusRadio

Один radio-option — в паре с родительским SusRadioGroup для exclusive choice.

Пакет

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

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

SusKit · Atoms

Свойства

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

Слоты

Слотов нет.

События

ИмяПолеPayload
ChangeOnChangebool

Хуки стиля

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

  • keyboard-focus
  • sus-radio
  • sus-radio__details
  • sus-radio__dot
  • sus-radio__input
  • sus-radio__label
  • sus-radio--checked
  • sus-radio--danger
  • sus-radio--density-comfortable
  • sus-radio--density-compact
  • sus-radio--density-default
  • sus-radio--disabled
  • sus-radio--error
  • sus-radio--primary
  • sus-radio--readonly
  • sus-radio--secondary
  • sus-radio--success
  • sus-radio--warning

Использование

xml
<template>
  <sus:SusRadio Label="Hard"
                Value="hard"
                Color="primary"
                @change="OnPicked" />
</template>

<script>
void OnPicked(bool selected) { /* … */ }
</script>
csharp
var radio = new SusRadio();
radio.Label.Value = "Normal";
radio.Value.Value = "normal";
radio.Color.Value = "primary";
radio.OnChange += selected => { /* … */ };

Заметки

  • Размещайте radio внутри SusRadioGroup (молекула); атом сам регистрируется и синхронизирует Model с выбором группы.
  • Отдельно от группы: управляйте Model / SyncChecked самостоятельно.
  • Error + HideDetails следуют тому же паттерну form-field, что и checkbox / текстовые поля.