SusExpansionPanel

Collapsible section — title header toggles body content.
Package
SusKit · Atoms (commercial)
Props
| Name | Type | Default | |
|---|---|---|---|
Open | Prop<bool> | false | v-model |
Title | Prop<string> | "" | v-model |
Density | Prop<string> | "default" | v-model |
Disabled | Prop<bool> | false | v-model |
Slots
| Name |
|---|
(default) |
header |
Events
| Name | Field | Payload |
|---|---|---|
Toggle | OnToggle | bool |
Style hooks
USS class contract — override appearance without touching C#. States toggle via these classes:
sus-expansion-panelsus-expansion-panel__chevronsus-expansion-panel__contentsus-expansion-panel__headersus-expansion-panel__header-rowsus-expansion-panel__titlesus-expansion-panel--densesus-expansion-panel--disabledsus-expansion-panel--opensus-slot
Usage
xml
<template>
<sus:SusExpansionPanel Title="Advanced"
:Open="AdvancedOpen.Value"
@toggle="OnToggle">
<!-- body content -->
</sus:SusExpansionPanel>
</template>
<script>
public Prop<bool> AdvancedOpen = new(false);
void OnToggle(bool open) { AdvancedOpen.Value = open; }
</script>csharp
var panel = new SusExpansionPanel();
panel.Title.Value = "Advanced";
panel.Open.Value = false;
panel.OnToggle += open => { /* … */ };
// Add children into the default slot / content hostNotes
- Slot
headerreplaces the default title + caret row. - Pair several panels under
SusExpansionPanels(molecule) for accordion behavior.