Back to Devexpress

CanSelectItemEventArgs.Item Property

wpf-devexpress-dot-xpf-dot-accordion-dot-canselectitemeventargs.md

latest4.1 KB
Original Source

CanSelectItemEventArgs.Item Property

Gets the processed item.

Namespace : DevExpress.Xpf.Accordion

Assembly : DevExpress.Xpf.Accordion.v25.2.dll

NuGet Package : DevExpress.Wpf.Accordion

Declaration

csharp
public object Item { get; }
vb
Public ReadOnly Property Item As Object

Property Value

TypeDescription
Object

A processed item.

|

Remarks

Use the Item property to get the processed item. To prevent this item from being selected, set the CanSelect property to false.

In Bound Mode

In bound mode, the Item property returns a bound data object.

The code sample below demonstrates how to prevent an item with the “Application Settings” caption from being selected.

xaml
<Window ...
        xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
        xmlns:dxa="http://schemas.devexpress.com/winfx/2008/xaml/accordion">
    <Grid>
        <dxa:AccordionControl
            ItemsSource="{Binding AppMenu.MenuItems}"
            DisplayMemberPath="Caption"
            ChildrenPath="SubItems"
            CanSelectItem="AccordionControl_CanSelectItem" />
    </Grid>
</Window>
csharp
private void AccordionControl_CanSelectItem(object sender, DevExpress.Xpf.Accordion.CanSelectItemEventArgs e) {
    MenuItem item = e.Item as MenuItem;
    if (item.Caption == "Application Settings") {
        e.CanSelect = false;
    }
}
vb
Private Sub AccordionControl_CanSelectItem(ByVal sender As Object, ByVal e As DevExpress.Xpf.Accordion.CanSelectItemEventArgs)
    Dim item As MenuItem = TryCast(e.Item, MenuItem)

    If item.Caption = "Application Settings" Then
        e.CanSelect = False
    End If
End Sub

In Unbound Mode

In unbound mode, the Item property returns an AccordionItem.

The code sample below demonstrates how to prevent an item with the “Application Settings” caption from being selected.

xaml
<Window ...
        xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
        xmlns:dxa="http://schemas.devexpress.com/winfx/2008/xaml/accordion">
    <Grid>
        <dxa:AccordionControl
            CanSelectItem="AccordionControl_CanSelectItem" >
            <dxa:AccordionItem Header="Start Page"/>
            <dxa:AccordionItem Header="Preferences">
                <dxa:AccordionItem Header="Account Info"/>
                <dxa:AccordionItem Header="Application Settings"/>
            </dxa:AccordionItem>
            <dxa:AccordionItem Header="About"/>
        </dxa:AccordionControl>
    </Grid>
</Window>
csharp
using DevExpress.Xpf.Accordion;
...

private void AccordionControl_CanSelectItem(object sender, CanSelectItemEventArgs e) {
    AccordionItem item = e.Item as AccordionItem;
    if (item.Header.ToString() == "Application Settings") {
        e.CanSelect = false;
    }
}
...
vb
Imports DevExpress.Xpf.Accordion
...

Private Sub AccordionControl_CanSelectItem(ByVal sender As Object, ByVal e As CanSelectItemEventArgs)
    Dim item As AccordionItem = TryCast(e.Item, AccordionItem)

    If item.Header.ToString() = "Application Settings" Then
        e.CanSelect = False
    End If
End Sub
...

See Also

CanSelectItemEventArgs Class

CanSelectItemEventArgs Members

DevExpress.Xpf.Accordion Namespace