# Segmented Control Capture input for a limited set of options. ```tsx return ( Label Item 1 Item 2 Item 3 ); } ``` ## Icons ```tsx return ( ); } ``` ## Orientation ```tsx return ( Item 1 Item 2 Item 3 ); } ``` ## Read Only ```tsx return ( Item 1 Item 2 Item 3 ); } ``` ## Disabled ```tsx return ( Item 1 Item 2 Item 3 ); } ``` ## Disabled Item ```tsx return ( Item 1 Item 2 Item 3 ); } ``` ## Direction ```tsx return ( Label Item 1 Item 2 Item 3 ); } ``` ## API Reference ### SegmentedControlRoot | Property | Type | Description | | --- | --- | --- | | `ids` | Partial<{ root: string; label: string; indicator: string; item: (value: string) => string; itemLabel: (value: string) => string; itemControl: (value: string) => string; itemHiddenInput: (value: string) => string; }> | undefined | The ids of the elements in the radio. Useful for composition. | | `value` | string | null | undefined | The controlled value of the radio group | | `defaultValue` | string | null | undefined | The initial value of the checked radio when rendered. Use when you don't need to control the value of the radio group. | | `name` | string | undefined | The name of the input fields in the radio (Useful for form submission). | | `form` | string | undefined | The associate form of the underlying input. | | `disabled` | boolean | undefined | If `true`, the radio group will be disabled | | `readOnly` | boolean | undefined | Whether the checkbox is read-only | | `onValueChange` | ((details: ValueChangeDetails) => void) | undefined | Function called once a radio is checked | | `orientation` | "horizontal" | "vertical" | undefined | Orientation of the radio group | | `dir` | "ltr" | "rtl" | undefined | The document's text/writing direction. Default: "ltr" | | `getRootNode` | (() => ShadowRoot | Node | Document) | undefined | A root node to correctly resolve document in custom environments. E.x.: Iframes, Electron. | | `element` | ((attributes: HTMLAttributes<"div">) => Element) | undefined | Render the element yourself | ### SegmentedControlRootProvider | Property | Type | Description | | --- | --- | --- | | `value`* | RadioGroupApi | | | `element` | ((attributes: HTMLAttributes<"div">) => Element) | undefined | Render the element yourself | ### SegmentedControlRootContext | Property | Type | Description | | --- | --- | --- | | `children`* | (ratingGroup: RadioGroupApi) => ReactNode | | ### SegmentedControlLabel | Property | Type | Description | | --- | --- | --- | | `element` | ((attributes: HTMLAttributes<"span">) => Element) | undefined | Render the element yourself | ### SegmentedControlControl | Property | Type | Description | | --- | --- | --- | | `element` | ((attributes: HTMLAttributes<"div">) => Element) | undefined | Render the element yourself | ### SegmentedControlIndicator | Property | Type | Description | | --- | --- | --- | | `element` | ((attributes: HTMLAttributes<"div">) => Element) | undefined | Render the element yourself | ### SegmentedControlItem | Property | Type | Description | | --- | --- | --- | | `value`* | string | | | `disabled` | boolean | undefined | | | `invalid` | boolean | undefined | | | `element` | ((attributes: HTMLAttributes<"label">) => Element) | undefined | Render the element yourself | ### SegmentedControlItemText | Property | Type | Description | | --- | --- | --- | | `element` | ((attributes: HTMLAttributes<"span">) => Element) | undefined | Render the element yourself | ### SegmentedControlItemHiddenInput | Property | Type | Description | | --- | --- | --- | | `element` | ((attributes: HTMLAttributes<"input">) => Element) | undefined | Render the element yourself |