AccordionSelectionChangedEventArgs.Reason Property
Returns the reason why the Accordion item’s selection state changed.
Namespace: DevExpress.Blazor
Assembly: DevExpress.Blazor.v24.2.dll
NuGet Package: DevExpress.Blazor
#Declaration
public NavigationItemStateChangeReason Reason { get; }
#Property Value
Type | Description |
---|---|
Navigation |
A Navigation |
Available values:
Name | Description |
---|---|
Api |
The state changes programmatically. |
User |
The state changes by user action. |
Url |
The state changes as a result of URL matching. |
#Remarks
The following example expands to the Square
item if it was selected from code:
<DxButton Click=@OnClick>Expand</DxButton>
<DxAccordion @ref="@MyAccordion"
SelectionMode="NavigationSelectionMode.Single"
SelectionChanged="@OnSelectionChanged"
RootItemExpandButtonDisplayMode="AccordionExpandButtonDisplayMode.None">
<Items>
<DxAccordionItem Text="Shapes">
<Items>
<DxAccordionItem Text="Circle" />
<DxAccordionItem Text="Square" />
</Items>
</DxAccordionItem>
<DxAccordionItem Text="Templates" />
</Items>
</DxAccordion>
@code {
DxAccordion MyAccordion;
void OnClick() {
MyAccordion.SelectItem(x => x.Text == "Square");
}
void OnSelectionChanged(AccordionSelectionChangedEventArgs args) {
if (args.Reason == NavigationItemStateChangeReason.UserAction) {
MyAccordion.ExpandToItem(x => x == args.SelectedItems.FirstOrDefault());
}
}
}