示例#1
0
        private Task PopulateRecentItems(MenuFlyoutSubItemViewModel menu)
        {
            try
            {
                var recentFolders = App.RecentItemsManager.RecentFolders;

                // add separator
                if (recentFolders.Any())
                {
                    menu.Items.Add(new MenuFlyoutSeparatorViewModel());
                }

                foreach (var recentFolder in recentFolders)
                {
                    var menuItem = new MenuFlyoutItemViewModel(recentFolder.Name, recentFolder.RecentPath, AddPageCommand);
                    menu.Items.Add(menuItem);
                }
            }
            catch (Exception ex)
            {
                App.Logger.Info(ex, "Could not fetch recent items");
            }

            return(Task.CompletedTask);
        }
示例#2
0
        public static MenuFlyoutItemBase GetStandardItem(BaseMenuFlyoutItemViewModel item)
        {
            MenuFlyoutItemBase flyoutItem;

            if (item is MenuFlyoutToggleItemViewModel flyoutItemToggleViewModel)
            {
                flyoutItem = new ToggleMenuFlyoutItem()
                {
                    Command          = flyoutItemToggleViewModel.Command,
                    CommandParameter = flyoutItemToggleViewModel.CommandParameter,
                    Text             = flyoutItemToggleViewModel.Text,
                    Tag       = flyoutItemToggleViewModel.Tag,
                    IsChecked = flyoutItemToggleViewModel.IsChecked
                };
            }
            else
            {
                MenuFlyoutItemViewModel flyoutItemViewModel = item as MenuFlyoutItemViewModel;

                flyoutItem = new MenuFlyoutItem()
                {
                    Command          = flyoutItemViewModel.Command,
                    CommandParameter = flyoutItemViewModel.CommandParameter,
                    Text             = flyoutItemViewModel.Text,
                    Tag  = flyoutItemViewModel.Tag,
                    Icon = new FontIcon()
                    {
                        Glyph = flyoutItemViewModel.IconGlyph.PreventNull(string.Empty)
                    }
                };
            }

            flyoutItem.IsEnabled = item.IsEnabled;

            return(flyoutItem);
        }