private static Task<bool> ExecuteLoadGpxDataCommandAsync(MainViewModel vm) { var completionSource = new TaskCompletionSource<bool>(); vm.LoadGpxDataCommand.ThrownExceptions.Subscribe(_ => completionSource.SetResult(false)); vm.LoadGpxDataCommand.Execute(null); vm.LoadGpxDataCommand.IsExecuting.FirstAsync(x => x == false).Subscribe(_ => { completionSource.SetResult(true); }); return completionSource.Task; }
public MainWindow() { InitializeComponent(); DataContext = new MainViewModel(RxApp.TaskpoolScheduler, new FileChooserUi()); }