chrome:shell.skip

generated:catalog.entry.toggle-group.title

generated:catalog.entry.toggle-group.description

@xngui/components/toggle-group
@xngui/components/toggle-group

chrome:demo.section

chrome:demo.preview

demo-preview:hints.category.navigation:
↑ ↓ ← →Home / End
demo-preview:hints.category.focus:
Focus
demo-preview:hints.category.shortcuts:
Space
demo-preview:hints.category.assistive:
SRTip
demo-preview:projection.slots-label:
x-toggle-button x-action-separator
import { Component } from '@angular/core';
import { signal } from '@angular/core';
import { XToggleButton } from '@xngui/components/toggle-button';
import { XToggleGroup } from '@xngui/components/toggle-group';
import { XChangeEvent } from '@xngui/core';
import { XIcon } from '@xngui/icons';
 
@Component({
selector: 'app-example',
imports: [signal, XToggleButton, XToggleGroup, XChangeEvent, XIcon],
templateUrl: './toggle-group.component.html',
})
export class ExampleComponent {
protected readonly align = signal<string | string[]>('left');
protected onGroupChanged(event: XChangeEvent<string | string[]>): void {
// handle selection change
}
}

chrome:demo.events.title

chrome:demo.events.empty

chrome:demo.api.title

x-toggle-group

chrome:demo.api.col.property
chrome:demo.api.col.type
chrome:demo.api.col.default
chrome:demo.api.col.description
orientation
XOrientation
'horizontal'
Join axis for child toggles.
size
XSize
—
Visual size tier — cascades to child toggles when unset locally.
density
XDensity
—
Spacing offsets — cascades to child toggles when unset locally.
variant
XVariant
—
Color role — cascades to child toggles; falls back to XConfigService when unset.
appearance
XAppearance
—
Surface treatment — cascades to child toggles; falls back to XConfigService when unset.
disabled
boolean
—
Blocks selection changes when true.
stretch
boolean
false
When true, segments share the group size evenly.
selectionMode
Extract<XSelectionMode, 'single' | 'multiple'>
'single'
Single or multiple selection.
ariaLabel
string
—
Accessible name — required when the segment purpose is not visible.