This example demonstrates how the NavBarControl.Groups collection can be iterated programmatically, and the expanded state of groups can be toggled by using a group’s NavBarGroup.IsExpanded property.
The result is demonstrated by the following image.
View Example
Private Sub button1_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
For i As Integer = 0 To navBarControl1.Groups.Count - 1
Dim currentGroup As NavBarGroup = navBarControl1.Groups(i)
currentGroup.IsExpanded = Not currentGroup.IsExpanded
Next i
End Sub
<DockPanel>
<Button Height="23" HorizontalAlignment="Left" Name="button1" VerticalAlignment="Top" Click="button1_Click">Toggle Group States</Button>
<dxn:NavBarControl Name="navBarControl1">
<dxn:NavBarControl.Groups>
<dxn:NavBarGroup Header="Group1">
<dxn:NavBarItem>Item1</dxn:NavBarItem>
<dxn:NavBarItem>Item2</dxn:NavBarItem>
</dxn:NavBarGroup>
<dxn:NavBarGroup Header="Group2" IsExpanded="False">
<dxn:NavBarItem>Item1</dxn:NavBarItem>
<dxn:NavBarItem>Item2</dxn:NavBarItem>
<dxn:NavBarItem>Item3</dxn:NavBarItem>
</dxn:NavBarGroup>
<dxn:NavBarGroup Header="Group3">
<dxn:NavBarItem>Item1</dxn:NavBarItem>
<dxn:NavBarItem>Item2</dxn:NavBarItem>
</dxn:NavBarGroup>
</dxn:NavBarControl.Groups>
<dxn:NavBarControl.View>
<dxn:ExplorerBarView />
</dxn:NavBarControl.View>
</dxn:NavBarControl>
</DockPanel>
private void button1_Click(object sender, RoutedEventArgs e){
for (int i = 0; i < navBarControl1.Groups.Count; i++){
NavBarGroup currentGroup = navBarControl1.Groups[i];
currentGroup.IsExpanded = !currentGroup.IsExpanded;
}
}