Пример #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="T:Ipheidi.MenuPage"/> class.
        /// </summary>
        public MenuPage()
        {
            NavigationPage.SetHasNavigationBar(this, false);
            pages = new List <Page>();
            Icon  = "menu_hamburger.png";
            InitializeComponent();

            //Bouton de logout
            ContentPage logout = new ContentPage();

            logout.Icon  = "logout.png";
            logout.Title = AppResources.DeconnexionBouton;

            //Bouton de refresh
            ContentPage refresh = new ContentPage();

            refresh.Icon  = "refresh.png";
            refresh.Title = AppResources.RegenererBrowserBouton;

            pages.Add(logout);
            pages.Add(refresh);
#if DEBUG
            pages.Add(new ContactPage());
#endif
            var MenuCell = new DataTemplate(typeof(MenuCellView));
            MenuCell.SetBinding(MenuCellView.ImageSourceProperty, "Icon");
            MenuCell.SetBinding(MenuCellView.TextProperty, "Title");
            listViewMenu.ItemTemplate   = MenuCell;
            listViewMenu.ItemsSource    = pages;
            listViewMenu.SeparatorColor = Color.Transparent;
            listViewMenu.ItemSelected  += (sender, e) =>
            {
                if (listViewMenu.SelectedItem != null)
                {
                    Page p = (Page)listViewMenu.SelectedItem;
                    if (p.Title == AppResources.DeconnexionBouton)
                    {
                        App.CookieManager.ClearCookies();
                        BrowserPage.CheckWebSession();
                    }
                    else if (p.Title == AppResources.RegenererBrowserBouton)
                    {
                        Device.BeginInvokeOnMainThread(App.Instance.RefreshBrowser);
                    }
                    else
                    {
                        Navigation.PushAsync(p);
                    }
                }
                listViewMenu.SelectedItem = null;
            };
        }