@@ -846,7 +846,7 @@ public void VerifyMenuItemAndContainerMappingMenuItemsSource()
846
846
var navView = new NavigationView ( ) ;
847
847
MUXControlsTestApp . App . TestContentRoot = navView ;
848
848
849
- navView . MenuItemsSource = new ObservableCollection < String > { "Item 1" , "Item 2" } ; ;
849
+ navView . MenuItemsSource = new ObservableCollection < string > { "Item 1" , "Item 2" } ; ;
850
850
navView . Width = 1008 ; // forces the control into Expanded mode so that the menu renders
851
851
852
852
MUXControlsTestApp . App . TestContentRoot . UpdateLayout ( true ) ;
@@ -855,11 +855,11 @@ public void VerifyMenuItemAndContainerMappingMenuItemsSource()
855
855
var menuItem = "Item 2" ;
856
856
// Get container for item
857
857
var itemContainer = navView . ContainerFromMenuItem ( menuItem ) as NavigationViewItem ;
858
- bool correctContainerReturned = itemContainer != null && ( itemContainer . Content as String ) == menuItem ;
858
+ bool correctContainerReturned = itemContainer != null && ( itemContainer . Content as string ) == menuItem ;
859
859
Verify . IsTrue ( correctContainerReturned , "Correct container should be returned for passed in menu item." ) ;
860
860
861
861
// Get item for container
862
- var returnedItem = navView . MenuItemFromContainer ( itemContainer ) as String ;
862
+ var returnedItem = navView . MenuItemFromContainer ( itemContainer ) as string ;
863
863
bool correctItemReturned = returnedItem != null && returnedItem == menuItem ;
864
864
Verify . IsTrue ( correctItemReturned , "Correct item should be returned for passed in container." ) ;
865
865
@@ -1080,5 +1080,23 @@ public void VerifyClearingItemsCollectionDoesNotCrashWhenItemSelectedOnTopNav()
1080
1080
itemsSource . Clear ( ) ;
1081
1081
} ) ;
1082
1082
}
1083
+
1084
+ [ TestMethod ]
1085
+ public void VerifyHierarchicalNavigationTopModeMenuItemsSourceDoesNotCrash ( )
1086
+ {
1087
+ RunOnUIThread . Execute ( ( ) =>
1088
+ {
1089
+ var navView = new NavigationView ( ) ;
1090
+ Content = navView ;
1091
+
1092
+ navView . PaneDisplayMode = NavigationViewPaneDisplayMode . Top ;
1093
+
1094
+ var childItem = new NavigationViewItem ( ) { Content = "Item 1.1" } ;
1095
+ var parentItem = new NavigationViewItem ( ) { Content = "Item 1" , MenuItemsSource = new ObservableCollection < NavigationViewItem > ( ) { childItem } } ;
1096
+ navView . MenuItemsSource = new ObservableCollection < NavigationViewItem > ( ) { parentItem } ;
1097
+
1098
+ Content . UpdateLayout ( ) ;
1099
+ } ) ;
1100
+ }
1083
1101
}
1084
1102
}
0 commit comments