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

SusRepeatButton

SusRepeatButton

Hold для авто-повтора кликов — первая задержка, затем interval ticks.

Пакет

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

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

SusKit · Atoms

Свойства

ИмяТипПо умолчанию
TextProp<string>"Hold"v-model
IconProp<string>""v-model
VariantProp<string>"elevated"v-model
ColorProp<string>"primary"v-model
SizeProp<string>"default"v-model
DisabledProp<bool>falsev-model
InitialDelayMsProp<int>400v-model
IntervalMsProp<int>80v-model
IsHoldingProp<bool>falsev-model

Слоты

Слотов нет.

События

ИмяПолеPayload
ClickOnClick
RepeatOnRepeat

Хуки стиля

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

  • sus-repeat-button
  • sus-repeat-button--disabled
  • sus-repeat-button--holding

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

xml
<template>
  <sus:SusRepeatButton Text="+"
                       Variant="tonal"
                       Color="primary"
                       InitialDelayMs="400"
                       IntervalMs="80"
                       @click="OnStep"
                       @repeat="OnStep" />
</template>

<script>
void OnStep() { /* increment once per click / tick */ }
</script>
csharp
var rpt = new SusRepeatButton();
rpt.Text.Value = "−";
rpt.InitialDelayMs.Value = 400;
rpt.IntervalMs.Value = 80;
rpt.OnClick += () => { /* … */ };
rpt.OnRepeat += () => { /* … */ };

Вариант

elevated · flat · tonal · outlined · text · plain

Заметки

  • OnClick срабатывает при нажатии; OnRepeat — на каждый авто-тик, пока кнопка удерживается.