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

SusCard

SusCard

Карточка-поверхность для группировки title, body и actions.

Пакет

SusKit · Молекулы (коммерческий)

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

SusKit · Molecules

Свойства

ИмяТипПо умолчанию
VariantProp<string>"elevated"v-model
SelectedProp<bool>falsev-model
DisabledProp<bool>falsev-model
TitleProp<string>""v-model
SubtitleProp<string>""v-model
TextProp<string>""v-model
ImageProp<string>""v-model
ImageHeightProp<float>0fv-model
ImageGradientProp<bool>falsev-model
LoadingProp<bool>falsev-model
LoadingColorProp<string>"primary"v-model
HoverProp<bool>falsev-model
LinkProp<bool>falsev-model
RoundedProp<string>"md"v-model
MinHeightProp<float>0fv-model
MinWidthProp<float>0fv-model

Слоты

Имя
header
(по умолчанию)
actions
footer

События

ИмяПолеPayload
ClickOnClick

Хуки стиля

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

  • sus-card
  • sus-card__actions
  • sus-card__body
  • sus-card__header
  • sus-card__image-gradient
  • sus-card__image-wrap
  • sus-card__loader
  • sus-card__subtitle
  • sus-card__text
  • sus-card__title
  • sus-card--disabled
  • sus-card--elevated
  • sus-card--flat
  • sus-card--hover
  • sus-card--link
  • sus-card--loading
  • sus-card--outlined
  • sus-card--rounded-lg
  • sus-card--rounded-pill
  • sus-card--rounded-sm
  • sus-card--rounded-xl
  • sus-card--selected
  • sus-card--tonal
  • sus-slot

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

xml
<template>
  <sus:SusCard Title="Card title"
               Subtitle="Subtitle"
               Text="Body text for the card."
               Variant="elevated"
               :Selected="Selected.Value"
               :Hover="Hover.Value"
               :Loading="Loading.Value"
               @click="OnClick">
    <template #actions>
      <sus:SusButton Text="Details" Variant="text" />
    </template>
  </sus:SusCard>
</template>

<script>
public Prop<bool> Selected = new(false);
public Prop<bool> Hover = new(false);
public Prop<bool> Loading = new(false);
void OnClick() { /* fires when Link is true */ }
</script>
csharp
var card = new SusCard();
card.Title.Value = "Card title";
card.Subtitle.Value = "Subtitle";
card.Text.Value = "Body text for the card preview.";
card.Variant.Value = "elevated";
card.Rounded.Value = "md";
card.OnClick += () => { /* … */ };

Вариант

elevated · flat · tonal · outlined

Заметки

  • Слоты: header, default body, actions, footer.
  • Установите Link, чтобы включить обработку кликов (OnClick).
  • Image + ImageHeight / ImageGradient добавляют медиа-полосу над header.