private void NavigationViewDriveItem_RightTapped(object sender, RightTappedRoutedEventArgs e)
        {
            Microsoft.UI.Xaml.Controls.NavigationViewItem sidebarItem = (Microsoft.UI.Xaml.Controls.NavigationViewItem)sender;

            ShowUnpinItem       = false;
            ShowEmptyRecycleBin = false;

            SideBarItemContextFlyout.ShowAt(sidebarItem, e.GetPosition(sidebarItem));

            App.rightClickedItem = sidebarItem.DataContext as DriveItem;
        }
        private void NavigationViewItem_RightTapped(object sender, RightTappedRoutedEventArgs e)
        {
            Microsoft.UI.Xaml.Controls.NavigationViewItem sidebarItem = (Microsoft.UI.Xaml.Controls.NavigationViewItem)sender;
            var item = sidebarItem.DataContext as LocationItem;

            if (!item.IsDefaultLocation)
            {
                SideBarItemContextFlyout.ShowAt(sidebarItem, e.GetPosition(sidebarItem));
                App.rightClickedItem = item;
            }
        }
        private void AddButtonSuppressSelection_Click(object sender, RoutedEventArgs e)
        {
            var newItem = new NavigationViewItem()
            {
                Content = "New Menu Item S.S", SelectsOnInvoked = false
            };

            AutomationProperties.SetAutomationId(newItem, "sup-selection-nav-item-" + suppressSelectionNextNumber);
            m_menuItems.Add(newItem);
            suppressSelectionNextNumber++;
        }
Example #4
0
        private void AddNavigationMenuItems()
        {
            foreach (var group in ControlInfoDataSource.Instance.Groups.OrderBy(i => i.Title))
            {
                var item = new Microsoft.UI.Xaml.Controls.NavigationViewItem()
                {
                    Content = group.Title, Tag = group.UniqueId, DataContext = group
                };
                AutomationProperties.SetName(item, group.Title);
                if (group.ImagePath.ToLowerInvariant().EndsWith(".png"))
                {
                    item.Icon = new BitmapIcon()
                    {
                        UriSource = new Uri(group.ImagePath, UriKind.RelativeOrAbsolute)
                    };
                }
                else
                {
                    item.Icon = new FontIcon()
                    {
                        FontFamily = new FontFamily("Segoe MDL2 Assets"),
                        Glyph      = group.ImagePath
                    };
                }
                NavigationViewControl.MenuItems.Add(item);

                if (group.UniqueId == "AllControls")
                {
                    this._allControlsMenuItem = item;
                }
                else if (group.UniqueId == "NewControls")
                {
                    this._newControlsMenuItem = item;
                }
                else if (group.UniqueId == "CadastroDeFabricantes")
                {
                    this._cadastroDeFabricantesMenuItem = item;
                }
            }

            // Move "What's New" and "All Controls" to the top of the NavigationView
            NavigationViewControl.MenuItems.Remove(_allControlsMenuItem);
            NavigationViewControl.MenuItems.Remove(_newControlsMenuItem);
            NavigationViewControl.MenuItems.Remove(_cadastroDeFabricantesMenuItem);
            NavigationViewControl.MenuItems.Insert(0, _allControlsMenuItem);
            NavigationViewControl.MenuItems.Insert(0, _newControlsMenuItem);
            NavigationViewControl.MenuItems.Insert(0, _cadastroDeFabricantesMenuItem);

            // Separate the All/New items from the rest of the categories.
            NavigationViewControl.MenuItems.Insert(2, new Microsoft.UI.Xaml.Controls.NavigationViewItemSeparator());

            //_newControlsMenuItem.Loaded += OnNewControlsMenuItemLoaded;
        }
        public void VerifySingleSelection()
        {
            NavigationViewItem menuItem1 = null;
            NavigationViewItem menuItem2 = null;
            NavigationView     navView   = null;

            RunOnUIThread.Execute(() =>
            {
                navView = new NavigationView();
                MUXControlsTestApp.App.TestContentRoot = navView;

                menuItem1         = new NavigationViewItem();
                menuItem2         = new NavigationViewItem();
                menuItem1.Content = "Item 1";
                menuItem2.Content = "Item 2";

                navView.MenuItems.Add(menuItem1);
                navView.MenuItems.Add(menuItem2);
                navView.Width = 1008; // forces the control into Expanded mode so that the menu renders
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.IsFalse(menuItem1.IsSelected);
                Verify.IsFalse(menuItem2.IsSelected);
                Verify.AreEqual(navView.SelectedItem, null);

                menuItem1.IsSelected = true;
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.IsTrue(menuItem1.IsSelected);
                Verify.IsFalse(menuItem2.IsSelected);
                Verify.AreEqual(navView.SelectedItem, menuItem1);

                menuItem2.IsSelected = true;
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.IsTrue(menuItem2.IsSelected);
                Verify.IsFalse(menuItem1.IsSelected, "MenuItem1 should have been deselected when MenuItem2 was selected");
                Verify.AreEqual(navView.SelectedItem, menuItem2);
            });
        }
Example #6
0
        private async void NavigationViewLocationItem_RightTapped(object sender, RightTappedRoutedEventArgs e)
        {
            Microsoft.UI.Xaml.Controls.NavigationViewItem sidebarItem = (Microsoft.UI.Xaml.Controls.NavigationViewItem)sender;
            var item = sidebarItem.DataContext as LocationItem;

            if (item.IsDefaultLocation)
            {
                ShowUnpinItem = false;
            }
            else
            {
                ShowUnpinItem = true;
            }

            if (item.Path.Equals(App.AppSettings.RecycleBinPath, StringComparison.OrdinalIgnoreCase))
            {
                var value = new ValueSet
                {
                    { "Arguments", "RecycleBin" },
                    { "action", "Query" }
                };
                var response = await App.Connection.SendMessageAsync(value);

                if (response.Status == Windows.ApplicationModel.AppService.AppServiceResponseStatus.Success && response.Message.TryGetValue("NumItems", out var numItems))
                {
                    RecycleBinHasItems = (long)numItems > 0;
                }
                else
                {
                    RecycleBinHasItems = false;
                }

                ShowEmptyRecycleBin = true;
                ShowUnpinItem       = true;
                ShowProperties      = false;
            }
            else
            {
                ShowEmptyRecycleBin = false;
                // Set to true if properties should be displayed for pinned folders
                ShowProperties = false;
            }

            // Additional check needed because ShowProperties is set to true if not recycle bin
            if (item.IsDefaultLocation)
            {
                ShowProperties = false;
            }

            SideBarItemContextFlyout.ShowAt(sidebarItem, e.GetPosition(sidebarItem));
            App.rightClickedItem = item;
        }
Example #7
0
        private void NavigateFrame(Microsoft.UI.Xaml.Controls.NavigationViewItem item)
        {
            switch (item.Name)
            {
            case "Home":
                MainFrameNav.Navigate(typeof(StuHubMainFrame));
                break;

            case "CollegeSubject":
                MainFrameNav.Navigate(typeof(CollegeSubjectRequest));
                break;
            }
        }
Example #8
0
        private void AddTenItems_Click(object sender, RoutedEventArgs e)
        {
            var menuItems = NavView.MenuItems;

            for (int i = 0; i < 10; i++)
            {
                m_numberOfItemAdded++;
                var item = new NavigationViewItem()
                {
                    Content = "Added Item " + m_numberOfItemAdded
                };
                menuItems.Add(item);
            }
        }
Example #9
0
        private void ScrambleButton_Click(object sender, RoutedEventArgs e)
        {
            foreach (var entry in NavView.MenuItems)
            {
                NavigationViewItem item = entry as NavigationViewItem;

                if (item != null)
                {
                    char[] newTitle = item.Content.ToString().ToCharArray();
                    Array.Reverse(newTitle);
                    item.Content = new string(newTitle);
                }
            }
        }
Example #10
0
        public void VerifyClearingItemsCollectionDoesNotCrashWhenItemSelectedOnTopNav()
        {
            RunOnUIThread.Execute(() =>
            {
                var navView             = new NavigationView();
                navView.PaneDisplayMode = NavigationViewPaneDisplayMode.Top;

                var navViewItem1 = new NavigationViewItem()
                {
                    Content = "MenuItem 1",
                };
                var navViewItem2 = new NavigationViewItem()
                {
                    Content = "MenuItem 2"
                };

                Log.Comment("Set up the MenuItems collection");
                navView.MenuItems.Add(navViewItem1);
                navView.MenuItems.Add(navViewItem2);

                Content = navView;
                Content.UpdateLayout();

                Log.Comment("Set MenuItem 1 as selected");
                navView.SelectedItem = navViewItem1;
                Verify.AreEqual(navViewItem1, navView.SelectedItem, "MenuItem 1 should have been selected");

                // Clearing the MenuItems collection should not crash the app
                Log.Comment("Clear the MenuItems collection");
                navView.MenuItems.Clear();

                Log.Comment("Set up the MenuItemsSource collection");
                var itemsSource = new ObservableCollection <NavigationViewItem>()
                {
                    navViewItem1, navViewItem2
                };
                navView.MenuItemsSource = itemsSource;

                Content.UpdateLayout();

                Log.Comment("Set MenuItem 1 as selected");
                navView.SelectedItem = navViewItem1;
                Verify.AreEqual(navViewItem1, navView.SelectedItem, "MenuItem 1 should have been selected");

                // Clearing the MenuItemsSource collection should not crash the app
                Log.Comment("Clear the MenuItemsSource collection");
                itemsSource.Clear();
            });
        }
Example #11
0
        private void InvokedMenuItemRelayCommand(Microsoft.UI.Xaml.Controls.NavigationViewItemInvokedEventArgs args)
        {
            if (_currentNavigationViewItem != null &&
                (string)_currentNavigationViewItem.Content == (string)args.InvokedItem)
            {
                return;
            }

            var navigationViewItem = MenuItemCollection.Single(e => (string)e.Content == (string)args.InvokedItem);
            var pageType           = navigationViewItem.Tag as Type;

            _messenger.Send(new GenericMessage <Type>(pageType), Message.REQUEST_VIEW_NAVIGATION);

            _currentNavigationViewItem = navigationViewItem;
        }
        public NavigationViewPageDataContext()
        {
            this.InitializeComponent();

            for (int i = 0; i < 8; i++)
            {
                var nvi        = new NavigationViewItem();
                var itemString = "Item #" + i;
                nvi.Content     = itemString;
                nvi.DataContext = itemString + "_DataContext";
                NavView.MenuItems.Add(nvi);
            }

            NavView.SelectedItem = NavView.MenuItems[0];
        }
Example #13
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            var myMusic = await Windows.Storage.StorageLibrary.GetLibraryAsync(Windows.Storage.KnownLibraryId.Music);

            IObservableVector <StorageFolder> myMusicFolders = myMusic.Folders;

            collection = new Collection();
            foreach (var fold in myMusicFolders)
            {
                var query = fold.CreateFileQueryWithOptions(new Windows.Storage.Search.QueryOptions(Windows.Storage.Search.CommonFileQuery.OrderByTitle, new string[] { ".mp3" }));
                var list  = await query.GetFilesAsync();

                foreach (var file in list)
                {
                    Song song = await CreateSongFromFileAsync(file);

                    collection.Add(song);
                }
            }
            pageParams              = new MainPageParams();
            pageParams.CentreFrame  = CentreFrame;
            MediaHelper.MediaPlayer = MediaPlayer;
            //pageParams.NavigationControlView = NavigationControlView;
            pageParams.collection = collection;
            List <string> ListofPlaylistName = new List <string>();
            var           storageFolder      = ApplicationData.Current.LocalFolder;
            var           files = await storageFolder.GetFilesAsync();

            foreach (var file in files)
            {
                ListofPlaylistName.Add(file.Name);
            }
            PlayList.UserPlayLists    = ListofPlaylistName;
            PlayList.PlaylistAdded   += PlaylistAdded;
            PlayList.PlaylistDeleted += PlaylistDeleted;
            foreach (var name in ListofPlaylistName)
            {
                Microsoft.UI.Xaml.Controls.NavigationViewItem viewItem = new Microsoft.UI.Xaml.Controls.NavigationViewItem();
                viewItem.Content = name;
                viewItem.Tapped += PlaylistSelected;
                NavigationControlView.MenuItems.Add(viewItem);
            }

            CentreFrame.Navigate(typeof(PivotDisplay), pageParams);
        }
Example #14
0
        private void SetHubNav_ItemInvoked(Microsoft.UI.Xaml.Controls.NavigationView sender, Microsoft.UI.Xaml.Controls.NavigationViewItemInvokedEventArgs args)
        {
            MUXC.Controls.NavigationViewItem NavItem = SetHubNav.SelectedItem as MUXC.Controls.NavigationViewItem;
            switch (NavItem.Content.ToString())
            {
            case "About":
                contentFrame.Navigate(typeof(AboutPage));
                break;

            case "Sync":
                contentFrame.Navigate(typeof(SyncView));
                break;

            case "Downloads":
                contentFrame.Navigate(typeof(Downloads));
                break;

            case "Home page":
                contentFrame.Navigate(typeof(HomePageSettings));
                break;

            case "Permissions":
                contentFrame.Navigate(typeof(PermissionsSettingsPage));
                break;

            case "Start-up":
                contentFrame.Navigate(typeof(StartupSettings));
                break;

            case "Reset":
                contentFrame.Navigate(typeof(ResetSettings));
                break;

            case "Personalization":
                contentFrame.Navigate(typeof(SettingsPage));
                break;

            case "Web settings":
                contentFrame.Navigate(typeof(WebSettings));
                break;

            case "Privacy and security":
                contentFrame.Navigate(typeof(PrivacySettings));
                break;
            }
        }
Example #15
0
        public MainPage()
        {
            this.InitializeComponent();

            MainFrame.Navigated       += MainFrame_Navigated;
            NavigationHelper.PageFrame = MainFrame;
            NavService.CurrentFrame    = MainFrame;

            foreach (PageInfo page in NavigationHelper.Pages)
            {
                var item = new Microsoft.UI.Xaml.Controls.NavigationViewItem()
                {
                    Content    = page.Title,
                    Icon       = page.Icon,
                    Visibility = page.Visibility,
                };
                MainNav.MenuItems.Add(item);
                AutomationProperties.SetName(item, page.Title);
            }
            MainNav.SelectedItem = MainNav.MenuItems[0];
        }
Example #16
0
        public void VerifyNavigationViewItemInFooterDoesNotCrash()
        {
            RunOnUIThread.Execute(() =>
            {
                var navView = new NavigationView();

                Content = navView;

                var navViewItem = new NavigationViewItem()
                {
                    Content = "Footer item"
                };

                navView.PaneFooter = navViewItem;

                navView.Width = 1008; // forces the control into Expanded mode so that the menu renders
                Content.UpdateLayout();

                // If we don't get here, app has crashed. This verify is just making sure code got run
                Verify.IsTrue(true);
            });
        }
Example #17
0
        private void NavigationViewDriveItem_RightTapped(object sender, RightTappedRoutedEventArgs e)
        {
            Microsoft.UI.Xaml.Controls.NavigationViewItem sidebarItem = (Microsoft.UI.Xaml.Controls.NavigationViewItem)sender;
            var item = sidebarItem.DataContext as DriveItem;

            if (item.Type == DriveType.Removable || item.Type == DriveType.CDRom)
            {
                ShowEjectDevice = true;
            }
            else
            {
                ShowEjectDevice = false;
            }

            ShowUnpinItem       = false;
            ShowEmptyRecycleBin = false;
            ShowProperties      = true;

            SideBarItemContextFlyout.ShowAt(sidebarItem, e.GetPosition(sidebarItem));

            App.RightClickedItem = item;
        }
Example #18
0
        private void NavigationViewLocationItem_RightTapped(object sender, RightTappedRoutedEventArgs e)
        {
            Microsoft.UI.Xaml.Controls.NavigationViewItem sidebarItem = (Microsoft.UI.Xaml.Controls.NavigationViewItem)sender;
            var item = sidebarItem.DataContext as LocationItem;

            if (item.IsDefaultLocation)
            {
                ShowUnpinItem = false;
            }
            else
            {
                ShowUnpinItem = true;
            }

            if (item.Path.Equals(App.AppSettings.RecycleBinPath, StringComparison.OrdinalIgnoreCase))
            {
                RecycleBinItemRightTapped?.Invoke(this, EventArgs.Empty);

                ShowEmptyRecycleBin = true;
                ShowUnpinItem       = true;
                ShowProperties      = false;
            }
            else
            {
                ShowEmptyRecycleBin = false;
                // Set to true if properties should be displayed for pinned folders
                ShowProperties = false;
            }

            // Additional check needed because ShowProperties is set to true if not recycle bin
            if (item.IsDefaultLocation)
            {
                ShowProperties = false;
            }

            SideBarItemContextFlyout.ShowAt(sidebarItem, e.GetPosition(sidebarItem));
            App.rightClickedItem = item;
        }
        private void NavigationView_SelectionChanged(Microsoft.UI.Xaml.Controls.NavigationView sender, Microsoft.UI.Xaml.Controls.NavigationViewSelectionChangedEventArgs args)
        {
            Microsoft.UI.Xaml.Controls.NavigationViewItem selectedItem = args.SelectedItem as Microsoft.UI.Xaml.Controls.NavigationViewItem;

            if (selectedItem != null)
            {
                switch (selectedItem.Tag)
                {
                case "Overview": NavigationFrame.Navigate(typeof(OobeOverview)); break;

                case "WhatsNew": NavigationFrame.Navigate(typeof(OobeWhatsNew)); break;

                case "AlwaysOnTop": NavigationFrame.Navigate(typeof(OobeAlwaysOnTop)); break;

                case "Awake": NavigationFrame.Navigate(typeof(OobeAwake)); break;

                case "ColorPicker": NavigationFrame.Navigate(typeof(OobeColorPicker)); break;

                case "FancyZones": NavigationFrame.Navigate(typeof(OobeFancyZones)); break;

                case "Run": NavigationFrame.Navigate(typeof(OobeRun)); break;

                case "ImageResizer": NavigationFrame.Navigate(typeof(OobeImageResizer)); break;

                case "KBM": NavigationFrame.Navigate(typeof(OobeKBM)); break;

                case "PowerRename": NavigationFrame.Navigate(typeof(OobePowerRename)); break;

                case "FileExplorer": NavigationFrame.Navigate(typeof(OobeFileExplorer)); break;

                case "ShortcutGuide": NavigationFrame.Navigate(typeof(OobeShortcutGuide)); break;

                case "VideoConference": NavigationFrame.Navigate(typeof(OobeVideoConference)); break;

                case "MouseUtils": NavigationFrame.Navigate(typeof(OobeMouseUtils)); break;
                }
            }
        }
Example #20
0
        private void Render_Menu()
        {
            mainNav.MenuItems.Add(new Microsoft.UI.Xaml.Controls.NavigationViewItemSeparator());
            var serverCount = new ServerCount();
            var numServers  = Convert.ToInt32(serverCount.NumberOfServers);
            var uriImage    = "ms-appx:///Assets/pilogo.png";
            var uri         = new Uri(uriImage);
            var piIcon      = new BitmapIcon();

            piIcon.UriSource = uri;

            for (var i = 1; i <= numServers; i++)
            {
                Microsoft.UI.Xaml.Controls.NavigationViewItem newMenu = new Microsoft.UI.Xaml.Controls.NavigationViewItem();
                var piholesettingsstore = new PiHoleSettingsStore(i.ToString());
                var piholeinfo          = piholesettingsstore.Retrive_Settings();
                newMenu.Content = piholeinfo.PiHoleServerName;
                newMenu.Tag     = i.ToString();
                newMenu.Icon    = piIcon;

                mainNav.MenuItems.Add(newMenu);
            }
        }
        private void NavView_ItemInvoked(
            Microsoft.UI.Xaml.Controls.NavigationView sender,
            Microsoft.UI.Xaml.Controls.NavigationViewItemInvokedEventArgs args)
        {
            var invokedMenuItem = args.InvokedItemContainer as Microsoft.UI.Xaml.Controls.NavigationViewItem;

            if (invokedMenuItem == null || invokedMenuItem == _lastInvokedMenuItem)
            {
                return;
            }

            var tag = invokedMenuItem.Tag.ToString();

            if (_pageMap.ContainsKey(tag))
            {
                var destinationType = _pageMap[tag];
                if (!_frame.Navigate(destinationType, null, args.RecommendedNavigationTransitionInfo))
                {
                    return;
                }
                _lastInvokedMenuItem = invokedMenuItem;
            }
        }
Example #22
0
        public void VerifyMenuItemAndContainerMappingMenuItems()
        {
            RunOnUIThread.Execute(() =>
            {
                var navView = new NavigationView();
                MUXControlsTestApp.App.TestContentRoot = navView;

                var menuItem1     = new NavigationViewItem();
                var menuItem2     = new NavigationViewItem();
                menuItem1.Content = "Item 1";
                menuItem2.Content = "Item 2";

                navView.MenuItems.Add(menuItem1);
                navView.MenuItems.Add(menuItem2);
                navView.Width = 1008; // forces the control into Expanded mode so that the menu renders

                MUXControlsTestApp.App.TestContentRoot.UpdateLayout();

                // Get container for item
                var itemContainer             = navView.ContainerFromMenuItem(menuItem2) as NavigationViewItem;
                bool correctContainerReturned = itemContainer != null && itemContainer == menuItem2;
                Verify.IsTrue(correctContainerReturned, "Correct container should be returned for passed in menu item.");

                // Get item for container
                var returnedItem         = navView.MenuItemFromContainer(menuItem2) as NavigationViewItem;
                bool correctItemReturned = returnedItem != null && returnedItem == menuItem2;
                Verify.IsTrue(correctItemReturned, "Correct item should be returned for passed in container.");

                // Try to get an item that is not in the NavigationView
                NavigationViewItem menuItem3            = new NavigationViewItem();
                menuItem3.Content                       = "Item 3";
                var returnedItemForNonExistentContainer = navView.MenuItemFromContainer(menuItem3);
                Verify.IsTrue(returnedItemForNonExistentContainer == null, "Returned item should be null.");

                MUXControlsTestApp.App.TestContentRoot = null;
            });
        }
        public void VerifySettingsItemToolTip()
        {
            NavigationView     navView      = null;
            NavigationViewItem settingsItem = null;

            RunOnUIThread.Execute(() =>
            {
                navView = new NavigationView();

                navView.IsSettingsVisible = true;
                navView.IsPaneOpen        = true;
                navView.PaneDisplayMode   = NavigationViewPaneDisplayMode.Left;
                MUXControlsTestApp.App.TestContentRoot = navView;
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                settingsItem = (NavigationViewItem)navView.SettingsItem;

                var toolTip = ToolTipService.GetToolTip(settingsItem);
                Verify.IsNull(toolTip, "Verify tooltip is disabled when pane is open");

                navView.IsPaneOpen = false;
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                var toolTip = ToolTipService.GetToolTip(settingsItem);
                Verify.IsNotNull(toolTip, "Verify tooltip is enabled when pane is closed");

                MUXControlsTestApp.App.TestContentRoot = null;
            });
        }
Example #24
0
        public void VerifySingleSelection()
        {
            RunOnUIThread.Execute(() =>
            {
                var navView = new NavigationView();
                Content     = navView;

                var menuItem1     = new NavigationViewItem();
                var menuItem2     = new NavigationViewItem();
                menuItem1.Content = "Item 1";
                menuItem2.Content = "Item 2";

                navView.MenuItems.Add(menuItem1);
                navView.MenuItems.Add(menuItem2);
                navView.Width = 1008; // forces the control into Expanded mode so that the menu renders
                Content.UpdateLayout();

                Verify.IsFalse(menuItem1.IsSelected);
                Verify.IsFalse(menuItem2.IsSelected);
                Verify.AreEqual(navView.SelectedItem, null);

                menuItem1.IsSelected = true;
                Content.UpdateLayout();

                Verify.IsTrue(menuItem1.IsSelected);
                Verify.IsFalse(menuItem2.IsSelected);
                Verify.AreEqual(navView.SelectedItem, menuItem1);

                menuItem2.IsSelected = true;
                Content.UpdateLayout();

                Verify.IsTrue(menuItem2.IsSelected);
                Verify.IsFalse(menuItem1.IsSelected, "MenuItem1 should have been deselected when MenuItem2 was selected");
                Verify.AreEqual(navView.SelectedItem, menuItem2);
            });
        }
Example #25
0
        private void OptionalRelayCommandHandler(ItemClickEventArgs args)
        {
            if (_currentNavigationViewItem != null &&
                (string)_currentNavigationViewItem.Content == (string)args.ClickedItem)
            {
                return;
            }

            //unselect all items in menuItemCollection
            var selectedMenuItem = ((IList <Microsoft.UI.Xaml.Controls.NavigationViewItem>)MainNavigationView.MenuItemsSource).Single(e => e.IsSelected);

            selectedMenuItem.IsSelected = false;


            var paneFooterCollection = ((Microsoft.UI.Xaml.Controls.NavigationViewList)MainNavigationView.PaneFooter).ItemsSource as IList <Microsoft.UI.Xaml.Controls.NavigationViewItem>;
            var navigationViewItem   = paneFooterCollection.Single(e => (string)e.Content == (string)args.ClickedItem);

            navigationViewItem.IsSelected = true;
            var pageType = navigationViewItem.Tag as Type;

            _messenger.Send(new GenericMessage <Type>(pageType), Message.REQUEST_VIEW_NAVIGATION);

            _currentNavigationViewItem = navigationViewItem;
        }
Example #26
0
        // Click and SelectionChange would have an container. This function verify that Content == container.Content
        // If content is null, Container.tag is returned.
        private string GetAndVerifyTheContainer(object content, NavigationViewItem container)
        {
            if (content == null)
            {
                if (container.Content != null)
                {
                    return("container's content should be null but it is " + container.Content.ToString());
                }

                return(container.Tag != null?container.Tag.ToString() : "container should have tag property since content is null");
            }

            var contentString   = content.ToString();
            var containerString = container.Content.ToString();

            if (contentString.Equals(containerString))
            {
                return(contentString);
            }
            else
            {
                return(string.Format("container's content:{0} doesn't match with content:{1}", containerString, contentString));
            }
        }
Example #27
0
        public void VerifySingleSelection()
        {
            string             navItemPresenter1CurrentState = string.Empty;
            string             navItemPresenter2CurrentState = string.Empty;
            NavigationView     navView   = null;
            NavigationViewItem menuItem1 = null;
            NavigationViewItem menuItem2 = null;

            RunOnUIThread.Execute(() =>
            {
                navView = new NavigationView();
                Content = navView;

                menuItem1         = new NavigationViewItem();
                menuItem2         = new NavigationViewItem();
                menuItem1.Content = "Item 1";
                menuItem2.Content = "Item 2";

                navView.MenuItems.Add(menuItem1);
                navView.MenuItems.Add(menuItem2);
                navView.Width = 1008; // forces the control into Expanded mode so that the menu renders
                Content.UpdateLayout();

                var menuItemLayoutRoot         = VisualTreeHelper.GetChild(menuItem1, 0) as FrameworkElement;
                var navItemPresenter           = VisualTreeHelper.GetChild(menuItemLayoutRoot, 0) as FrameworkElement;
                var navItemPresenterLayoutRoot = VisualTreeHelper.GetChild(navItemPresenter, 0) as FrameworkElement;
                var statesGroups = VisualStateManager.GetVisualStateGroups(navItemPresenterLayoutRoot);

                foreach (var visualStateGroup in statesGroups)
                {
                    Log.Comment($"VisualStateGroup1: Name={visualStateGroup.Name}, CurrentState={visualStateGroup.CurrentState.Name}");

                    visualStateGroup.CurrentStateChanged += (object sender, VisualStateChangedEventArgs e) =>
                    {
                        Log.Comment($"VisualStateChangedEventArgs1: Name={e.Control.Name}, OldState={e.OldState.Name}, NewState={e.NewState.Name}");
                        navItemPresenter1CurrentState = e.NewState.Name;
                    };
                }

                menuItemLayoutRoot         = VisualTreeHelper.GetChild(menuItem2, 0) as FrameworkElement;
                navItemPresenter           = VisualTreeHelper.GetChild(menuItemLayoutRoot, 0) as FrameworkElement;
                navItemPresenterLayoutRoot = VisualTreeHelper.GetChild(navItemPresenter, 0) as FrameworkElement;
                statesGroups = VisualStateManager.GetVisualStateGroups(navItemPresenterLayoutRoot);

                foreach (var visualStateGroup in statesGroups)
                {
                    Log.Comment($"VisualStateGroup2: Name={visualStateGroup.Name}, CurrentState={visualStateGroup.CurrentState.Name}");

                    visualStateGroup.CurrentStateChanged += (object sender, VisualStateChangedEventArgs e) =>
                    {
                        Log.Comment($"VisualStateChangedEventArgs2: Name={e.Control.Name}, OldState={e.OldState.Name}, NewState={e.NewState.Name}");
                        navItemPresenter2CurrentState = e.NewState.Name;
                    };
                }

                Verify.IsFalse(menuItem1.IsSelected);
                Verify.IsFalse(menuItem2.IsSelected);
                Verify.AreEqual(null, navView.SelectedItem);

                menuItem1.IsSelected = true;
                Content.UpdateLayout();
            });
            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.AreEqual("Selected", navItemPresenter1CurrentState);
                Verify.AreEqual(string.Empty, navItemPresenter2CurrentState);

                Verify.IsTrue(menuItem1.IsSelected);
                Verify.IsFalse(menuItem2.IsSelected);
                Verify.AreEqual(menuItem1, navView.SelectedItem);

                menuItem2.IsSelected = true;
                Content.UpdateLayout();
            });
            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.AreEqual("Normal", navItemPresenter1CurrentState);
                Verify.AreEqual("Selected", navItemPresenter2CurrentState);

                Verify.IsTrue(menuItem2.IsSelected);
                Verify.IsFalse(menuItem1.IsSelected, "MenuItem1 should have been deselected when MenuItem2 was selected");
                Verify.AreEqual(menuItem2, navView.SelectedItem);
            });
        }
Example #28
0
        private void modificarItemNavigationSeleccionat(int pos)
        {
            Microsoft.UI.Xaml.Controls.NavigationViewItem item = (Microsoft.UI.Xaml.Controls.NavigationViewItem)nvwBarraNavegacio.MenuItems[pos];

            item.FontWeight = FontWeights.Bold;
        }
 private void OnItemInvoked(NavigationViewItem sender, object args)
 {
 }
        public void VerifyExpandCollapseChevronVisibility()
        {
            NavigationView                navView    = null;
            NavigationViewItem            parentItem = null;
            ObservableCollection <string> children   = null;

            RunOnUIThread.Execute(() =>
            {
                navView = new NavigationView();
                Content = navView;

                children   = new ObservableCollection <string>();
                parentItem = new NavigationViewItem()
                {
                    Content = "ParentItem", MenuItemsSource = children
                };

                navView.MenuItems.Add(parentItem);

                navView.Width = 1008; // forces the control into Expanded mode so that the menu renders
                Content.UpdateLayout();

                UIElement chevronUIElement = (UIElement)VisualTreeUtils.FindVisualChildByName(parentItem, "ExpandCollapseChevron");
                Verify.IsTrue(chevronUIElement.Visibility == Visibility.Collapsed, "chevron should have been collapsed as NavViewItem has no children");

                // Add a child to parentItem through the MenuItemsSource API. This should make the chevron visible.
                children.Add("Child 1");
                Content.UpdateLayout();

                Verify.IsTrue(chevronUIElement.Visibility == Visibility.Visible, "chevron should have been visible as NavViewItem now has children");

                // Remove all children of parentItem. This should collapse the chevron
                children.Clear();
                Content.UpdateLayout();

                Verify.IsTrue(chevronUIElement.Visibility == Visibility.Collapsed, "chevron should have been collapsed as NavViewItem no longer has children");

                // Add a child to parentItem and set the MenuItemsSource as null. This should collapse the chevron
                children.Add("Child 2");
                Content.UpdateLayout();

                // we are doing this so that when we set MenuItemsSource as null, we can check if the chevron's visibility really changes
                Verify.IsTrue(chevronUIElement.Visibility == Visibility.Visible, "chevron should have been visible as NavViewItem now has children");

                parentItem.MenuItemsSource = null;
                Content.UpdateLayout();

                Verify.IsTrue(chevronUIElement.Visibility == Visibility.Collapsed, "chevron should have been collapsed as NavViewItem no longer has children");

                // Add a child to parentItem through the MenuItems API. This should make the chevron visible.
                parentItem.MenuItems.Add(new NavigationViewItem()
                {
                    Content = "Child 3"
                });
                Content.UpdateLayout();

                Verify.IsTrue(chevronUIElement.Visibility == Visibility.Visible, "chevron should have been visible as NavViewItem now has children");

                // Remove all children of parentItem. This should collapse the chevron
                parentItem.MenuItems.Clear();
                Content.UpdateLayout();

                Verify.IsTrue(chevronUIElement.Visibility == Visibility.Collapsed, "chevron should have been collapsed as NavViewItem no longer has children");
            });
        }