protected Task ShowDialogAsync(ViewModelBase viewModel) { var eventArgs = new DialogRequestedEventArgs(viewModel); DialogRequested.Invoke(this, eventArgs); return(eventArgs.CompletionTask); }
public bool OnFileDialog(IWebBrowser webBrowser, IBrowser browser, CefFileDialogMode mode, CefFileDialogFlags flags, string title, string defaultFilePath, List <string> acceptFilters, int selectedAcceptFilter, IFileDialogCallback callback) { var args = new DialogRequestedEventArgs { Element = ToElement(mode), InitialPath = defaultFilePath, Operation = ToOperation(mode), Title = title }; Task.Run(() => { DialogRequested?.Invoke(args); using (callback) { if (args.Success) { callback.Continue(selectedAcceptFilter, new List <string> { args.FullPath }); } else { callback.Cancel(); } } }); return(true); }
protected Task ShowMessageDialogAsync(string title, string message) { var messageDialogModel = new MessageDialogModel(title, message); var eventArgs = new DialogRequestedEventArgs(messageDialogModel); DialogRequested.Invoke(this, eventArgs); return(eventArgs.CompletionTask); }
protected virtual void OnDialogRequested(object sender, DialogRequestedEventArgs e) { DialogRequested?.Invoke(this, e); }