internal static void SetItemDisplayType(DependencyObject obj, NavigationPaneItemDisplayType value) { obj.SetValue(ItemDisplayTypeProperty, value); }
internal int GetLastItemIndex(NavigationPaneItemDisplayType type) { int index = -1; if (type == NavigationPaneItemDisplayType.Large) { index = GetFirstItemIndex(NavigationPaneItemDisplayType.Small); if (index == -1) index = GetFirstItemIndex(NavigationPaneItemDisplayType.Undefined); } else if (type == NavigationPaneItemDisplayType.Small) index = GetFirstItemIndex(NavigationPaneItemDisplayType.Undefined); if (index == -1) index = Items.Count; while (index-- > 0) { DependencyObject item = Items[index] as NavigationPaneItem; if(item == null) item = ItemContainerGenerator.ContainerFromIndex(index); if (!GetIsItemExcluded(item)) break; } return index; }
internal static void SetItemDisplayType(DependencyObject obj, NavigationPaneItemDisplayType value) { obj.SetValue(ItemDisplayTypeProperty, value); }
internal int GetFirstItemIndex(NavigationPaneItemDisplayType type) { int reach = 0; if (type != NavigationPaneItemDisplayType.Large) reach += LargeItems; if (type == NavigationPaneItemDisplayType.Undefined && IsSmallItemsVisible) reach += SmallItems; int index = 0; int count = 0; for (; index < Items.Count && count < reach; index++) { NavigationPaneItem item = Items[index] as NavigationPaneItem; if (item == null) item = ItemContainerGenerator.ContainerFromIndex(index) as NavigationPaneItem; if (item != null && !GetIsItemExcluded(item)) count++; } if (index == Items.Count) index = -1; return index; }