public void OnSideMenuItemChanged (SideMenuItem sideMenuItem)
		{
			EventHandler<SideMenuItem> handler = SideMenuItemChanged;
			if (handler != null) {
				handler (this, sideMenuItem);
			}
		}
		private async void SideMenuItemTapped (object sender, SideMenuItem sideMenuItem)
		{
			IsPresented = false;

			switch (sideMenuItem) {
			case SideMenuItem.Logout:
				await LogOut ();
				break;
			default:
				var newPage = PageAttribute.GetPage (sideMenuItem);
				if (!IsSameAsCurrentPage (newPage)) {
					newPage.Title = Localization.GetString (LocalizationKeyAttribute.GetLocalizationKey (sideMenuItem));
					navPage = StyledNavigationPage (newPage);

					Detail = navPage;
				}
				break;
			}
		}
        public ActionResult Index()
        {
            var model = new SideMenuViewModel();

            var            s = new DateTime(1900, 1, 1);
            var            e = new DateTime(3000, 12, 31);
            List <Product> products;

            products = HccApp.ReportingTopSellersByDate(s, e, 10);
            foreach (var p in products)
            {
                var item = new SideMenuItem
                {
                    Title = p.ProductName,
                    Name  = p.ProductName,
                    Url   = UrlRewriter.BuildUrlForProduct(p)
                };
                item.Name += " - " + p.SitePrice.ToString("C");
                model.Items.Add(item);
            }

            model.Title = "Top Sellers";
            return(View(model));
        }
        // UIResponder
        void SideMenuListView_ItemTapped(object sender, ItemTappedEventArgs e)
        {
            SideMenuItem       item = (SideMenuItem)e.Item;
            BaseNavigationPage currentNavigationPage = (BaseNavigationPage)((MasterDetailPage)Application.Current.MainPage).Detail;

            if (item.Title == "Home")
            {
                ((MasterDetailPage)Application.Current.MainPage).IsPresented = false;
                if (!(currentNavigationPage.RootPage is HomeContentPage))
                {
                    ((MasterDetailPage)Application.Current.MainPage).Detail = new BaseNavigationPage(new HomeContentPage());
                }
            }
            else if (item.Title == "Website")
            {
                ((MasterDetailPage)Application.Current.MainPage).IsPresented = true;
                this.OpenWebView("https://chatmatch.me/");
            }

            // deselect
            ListView lst = (ListView)sender;

            lst.SelectedItem = null;
        }
Beispiel #5
0
    private void SideMenuItemSelected(object sender, RoutedEventArgs e)
    {
        if (e.OriginalSource is SideMenuItem item)
        {
            if (item.Role == SideMenuItemRole.Item)
            {
                _isItemSelected = true;

                if (Equals(item, _selectedItem))
                {
                    return;
                }

                if (_selectedItem != null)
                {
                    _selectedItem.IsSelected = false;
                }

                _selectedItem            = item;
                _selectedItem.IsSelected = true;
                RaiseEvent(new FunctionEventArgs <object>(SelectionChangedEvent, this)
                {
                    Info = e.OriginalSource
                });
            }
            else
            {
                if (!Equals(item, _selectedHeader))
                {
                    if (_selectedHeader != null)
                    {
                        if (ExpandMode == ExpandMode.Freedom && item.ItemsHost.IsVisible && !_isItemSelected)
                        {
                            item.IsSelected = false;
                            SwitchPanelArea(item);
                            return;
                        }

                        _selectedHeader.IsSelected = false;
                        if (ExpandMode != ExpandMode.Freedom)
                        {
                            SwitchPanelArea(_selectedHeader);
                        }
                    }

                    _selectedHeader            = item;
                    _selectedHeader.IsSelected = true;
                    SwitchPanelArea(_selectedHeader);
                }
                else if (ExpandMode == ExpandMode.Freedom && !_isItemSelected)
                {
                    _selectedHeader.IsSelected = false;
                    SwitchPanelArea(_selectedHeader);
                    _selectedHeader = null;
                }

                if (_isItemSelected)
                {
                    _isItemSelected = false;
                }
                else if (_selectedHeader != null)
                {
                    if (AutoSelect)
                    {
                        if (_selectedItem != null)
                        {
                            _selectedItem.IsSelected = false;
                            _selectedItem            = null;
                        }

                        _selectedHeader.SelectDefaultItem();
                    }
                    _isItemSelected = false;
                }

                if (!item.HasItems)
                {
                    RaiseEvent(new FunctionEventArgs <object>(SelectionChangedEvent, this)
                    {
                        Info = e.OriginalSource
                    });
                }
            }
        }
    }
		public async Task NavigateToPage (SideMenuItem sideMenuItem)
		{
			IsPresented = false;

			switch (sideMenuItem) {
			// FIXIT: Enable again when Dashboard is created
			//case SideMenuItem.Home:
			//    await PopToRootAsync(false);
			//    break;
			default:
				Page page = PageAttribute.GetPage (sideMenuItem);
				if (!IsSameAsCurrentPage (page)) {
					await PopToRootAsync (false);
					await PushPageAsync (page);
				}
				break;
			}

			App app = (App)Application.Current;
			app.OnSideMenuItemChanged (sideMenuItem);

			this.sideMenuPage.ForceLayout ();
		}
 protected internal virtual void OnItemTapped(object sender, SideMenuItem sideMenuItem)
 {
     EventHandler<SideMenuItem> eventHandler = ItemTapped;
     if (eventHandler != null) {
         eventHandler (this, sideMenuItem);
     }
 }
Beispiel #8
0
        private async void Window_Loaded(object sender, RoutedEventArgs e)
        {
            _requester = new Requester();
            var result = await _requester.TestAuthenticationAsync();

            if (result != null)
            {
                var loginPage = new LoginPage();
                MainFrame.Navigate(loginPage);
            }
            else
            {
                var(success, message, navObj) = await _requester.GetNavigatorInfo();

                if (success)
                {
                    var style = (Style)Application.Current.FindResource("TextBlockFabricIcons");
                    var brush = (Brush)Application.Current.FindResource("SecondaryRegionBrush");
                    //var brush = new SolidColorBrush(Color.FromRgb(248, 248, 248));
                    //var foreBrush = new SolidColorBrush(Color.FromRgb(48, 68, 128));
                    var foreBrush = (Brush)Application.Current.FindResource("SecondaryTextBrush");
                    DrawerLeft.Visibility = Visibility.Visible;
                    //_viewModel.NavSections = navObj.Sections;
                    foreach (var g in navObj.Sections)
                    {
                        var sideMenuItem = new SideMenuItem
                        {
                            Background = brush,
                            Header     = new TextBlock
                            {
                                Text = g.Name,
                            },
                            Icon = new TextBlock
                            {
                                Style = style,
                                Text  = g.IconString
                            },
                            FontSize = 15,
                            Tag      = g.Tag
                        };

                        foreach (var itemObj in g.Items)
                        {
                            var menuItem = new SideMenuItem
                            {
                                Header = itemObj.Name,
                                Icon   = new TextBlock
                                {
                                    Style = style,
                                    Text  = itemObj.IconString
                                },
                                Tag              = itemObj.Tag,
                                FontSize         = 12,
                                Foreground       = foreBrush,
                                Command          = _viewModel.SelectCmd,
                                CommandParameter = itemObj
                            };
                            sideMenuItem.Items.Add(menuItem);
                        }
                        GeneralSideMenu.Items.Add(sideMenuItem);
                    }

                    GeneralSideMenu.ExpandMode = ExpandMode.Freedom;
                    //MainFrame.NavigationUIVisibility = NavigationUIVisibility.Visible;
                    //LblUri.Visibility = Visibility.Visible;
                    //if (firstItem != null)
                    //{
                    //    firstItem.IsSelected = true;
                    //}
                }
                else
                {
                    MessageBox.Show(message, App.Current.MainWindow.Title, MessageBoxButton.OK,
                                    MessageBoxImage.Exclamation);
                }
                //MainFrame.Navigate(new GeneralPage());
            }
        }