@@ -840,19 +840,19 @@ public void VerifyMenuItemAndContainerMappingMenuItemsSource()
840
840
var navView = new NavigationView ( ) ;
841
841
MUXControlsTestApp . App . TestContentRoot = navView ;
842
842
843
- navView . MenuItemsSource = new ObservableCollection < String > { "Item 1" , "Item 2" } ; ;
843
+ navView . MenuItemsSource = new ObservableCollection < string > { "Item 1" , "Item 2" } ;
844
844
navView . Width = 1008 ; // forces the control into Expanded mode so that the menu renders
845
845
846
846
MUXControlsTestApp . App . TestContentRoot . UpdateLayout ( ) ;
847
847
848
848
var menuItem = "Item 2" ;
849
849
// Get container for item
850
850
var itemContainer = navView . ContainerFromMenuItem ( menuItem ) as NavigationViewItem ;
851
- bool correctContainerReturned = itemContainer != null && ( itemContainer . Content as String ) == menuItem ;
851
+ bool correctContainerReturned = itemContainer != null && ( itemContainer . Content as string ) == menuItem ;
852
852
Verify . IsTrue ( correctContainerReturned , "Correct container should be returned for passed in menu item." ) ;
853
853
854
854
// Get item for container
855
- var returnedItem = navView . MenuItemFromContainer ( itemContainer ) as String ;
855
+ var returnedItem = navView . MenuItemFromContainer ( itemContainer ) as string ;
856
856
bool correctItemReturned = returnedItem != null && returnedItem == menuItem ;
857
857
Verify . IsTrue ( correctItemReturned , "Correct item should be returned for passed in container." ) ;
858
858
@@ -1073,5 +1073,23 @@ public void VerifyClearingItemsCollectionDoesNotCrashWhenItemSelectedOnTopNav()
1073
1073
itemsSource . Clear ( ) ;
1074
1074
} ) ;
1075
1075
}
1076
+
1077
+ [ TestMethod ]
1078
+ public void VerifyHierarchicalNavigationTopModeMenuItemsSourceDoesNotCrash ( )
1079
+ {
1080
+ RunOnUIThread . Execute ( ( ) =>
1081
+ {
1082
+ var navView = new NavigationView ( ) ;
1083
+ Content = navView ;
1084
+
1085
+ navView . PaneDisplayMode = NavigationViewPaneDisplayMode . Top ;
1086
+
1087
+ var childItem = new NavigationViewItem ( ) { Content = "Item 1.1" } ;
1088
+ var parentItem = new NavigationViewItem ( ) { Content = "Item 1" , MenuItemsSource = new ObservableCollection < NavigationViewItem > ( ) { childItem } } ;
1089
+ navView . MenuItemsSource = new ObservableCollection < NavigationViewItem > ( ) { parentItem } ;
1090
+
1091
+ Content . UpdateLayout ( ) ;
1092
+ } ) ;
1093
+ }
1076
1094
}
1077
1095
}
0 commit comments