public async void Handle(LoadRuleMessage message) { var loadRuleVm = _loadRuleFactory(message); var loadTask = loadRuleVm.LoadAsync(); await _dialogService.ShowDialogAsync(loadRuleVm).ContinueWith(t => { if (!loadTask.IsCompleted) { //cancel } }); }
public LoadRuleViewModel( LoadRuleMessage loadRuleMessage, IEnumerable <IRulesProvider> ruleProviders, Func <RuleInfo, RuleInfoViewModel> ruleInfoViewModelFactory) { _loadRuleMessage = loadRuleMessage; _ruleProviders = ruleProviders; _ruleInfoViewModelFactory = ruleInfoViewModelFactory; _rules = new BindableCollection <RuleInfoViewModel>(); Rules = new ListCollectionView(_rules); Rules.GroupDescriptions.Add(new PropertyGroupDescription("RuleInfo.Group")); }