private async void ExecuteShowBrowseWindowCommand() { var b = new BrowseView(); b.ShowDialog(); var vm = (BrowseViewModel)b.DataContext; if (vm.C9Entries == null) { return; } IsBusy = true; await Task.Factory.StartNew(() => { if (Stories == null) { Stories = new ObservableCollection <Story>(); } foreach (var item in vm.C9Entries) { if (item.Selected) { var entryBody = GetEntryBody(item.EntryUrl); DispatcherHelper.CheckBeginInvokeOnUI( () => { Stories.Add(new Story { Title = item.Title, ImageUrl = item.ImageUrl, EntryUrl = item.EntryUrl, BodyHtml = entryBody }); }); } } }); IsBusy = false; }