Ejemplo n.º 1
0
        public RecentThreadsViewModel(
            RecentThreadsService repositoryService,
            IBoard board,
            IShell shell,
            FavoriteThreadsService favoriteThreads)
            : base(repositoryService, board, shell) {

            FavoriteThreads = favoriteThreads;
            var dialog = new MessageDialog(
                Localization.GetForView("RecentThreads", "ClearConfirmationContent"),
                Localization.GetForView("RecentThreads", "ClearConfirmationTitle"));

            dialog.AddButton(
                Localization.GetForView("RecentThreads", "ConfirmClear"),
                async () => {
                    IsLoading = true;
                    Threads.Clear();
                    RepositoryService.Items.Clear();
                    await RepositoryService.Save();
                    IsLoading = false;
                });

            dialog.AddButton(
                Localization.GetForView("RecentThreads", "DontClear"), () => { });

            ClearConfirmationDialog = dialog;
        }
        /// <summary>
        /// Shows a dialog with two options to choose from
        /// </summary>
        /// <param name="text"></param>
        /// <param name="leftButtonText"></param>
        /// <param name="rightButtonText"></param>
        /// <param name="leftButtonAction"></param>
        /// <param name="rightButtonAction"></param>
        /// <returns></returns>
        public static IAsyncOperation<IUICommand> ShowTwoOptionsDialog(string text, string leftButtonText, string rightButtonText, Action leftButtonAction, Action rightButtonAction)
        {
            var dialog = new MessageDialog(text);

            dialog.AddButton(leftButtonText, leftButtonAction);
            dialog.AddButton(rightButtonText, rightButtonAction);

            dialog.DefaultCommandIndex = 1;

            return dialog.ShowAsync();
        }