private void OnConfirmDialogComplete(ConfirmDialogResult result) { if (ConfirmDialogComplete != null) { ConfirmDialogComplete.Invoke(this, result); } }
protected override bool HandleInput() { var exitInputLoop = false; do { var input = GetPlayerInput(); if (input == Inputs.cancel) { DialogResult = ConfirmDialogResult.No; return(true); } if (input == Inputs.yes) { DialogResult = ConfirmDialogResult.Yes; return(true); } if (input == Inputs.no) { DialogResult = ConfirmDialogResult.No; return(true); } } while (exitInputLoop == false); return(false); }
public IAsyncOperation <ConfirmDialogResult> ShowConfirmDialog(string title, string message) { Func <Task <ConfirmDialogResult> > helper = async() => { ConfirmDialogResult result = ConfirmDialogResult.No; ContentDialog dialog = new ContentDialog() { MaxWidth = (App.Current as App).MainPage.ActualWidth, Title = title }; var panel = new StackPanel(); panel.Orientation = Orientation.Vertical; panel.Children.Add(new TextBlock { Text = message, TextWrapping = Windows.UI.Xaml.TextWrapping.Wrap, Margin = new Thickness(0.0, 10.0, 0.0, 10.0) }); var checkBox = new CheckBox() { Content = resources.GetString("confirmDialogDontAsk"), IsChecked = false }; panel.Children.Add(checkBox); dialog.Content = panel; dialog.PrimaryButtonText = this.resources.GetString("confirmDialogYes"); dialog.IsPrimaryButtonEnabled = true; dialog.PrimaryButtonClick += delegate { if (checkBox.IsChecked != null && checkBox.IsChecked.Value) { result = ConfirmDialogResult.YesDontAsk; } else { result = ConfirmDialogResult.Yes; } }; dialog.SecondaryButtonText = this.resources.GetString("confirmDialogNo"); dialog.IsSecondaryButtonEnabled = true; dialog.SecondaryButtonClick += delegate { if (checkBox.IsChecked != null && checkBox.IsChecked.Value) { result = ConfirmDialogResult.NoDontAsk; } else { result = ConfirmDialogResult.No; } }; await dialog.ShowAsync(); return(result); }; return(helper().AsAsyncOperation <ConfirmDialogResult>()); }