private void OpenSprintsPickup(OpenSprintsPickupMessage message) { var sprints = message.BoardContent.Sprints; Func <RawAgileSprint, INavigationPage> followUpCallback = sprint => { if (_sprintsDetailsCache.ContainsKey(sprint.Id) == false) { var newViewModel = _resolver.Resolve <SprintDetailsViewModel>(new NamedParameter("sprint", sprint), new NamedParameter("issues", message.BoardContent.IssuesInSprint(sprint.Id))); _sprintsDetailsCache[sprint.Id] = new SprintDetailsPage(newViewModel); } return(_sprintsDetailsCache[sprint.Id]); }; var viewModel = _resolver.Resolve <PickUpSprintViewModel>(new NamedParameter("sprints", sprints), new NamedParameter("followUp", followUpCallback)); var page = new PickUpSprintPage(viewModel); _navigator.NavigateTo(page); }
private void OpenSprintsPickup(OpenSprintsPickupMessage message) { var sprints = message.BoardContent.Sprints; Func<RawAgileSprint, INavigationPage> followUpCallback = sprint => { if (_sprintsDetailsCache.ContainsKey(sprint.Id) == false) { var newViewModel = _resolver.Resolve<SprintDetailsViewModel>(new NamedParameter("sprint", sprint), new NamedParameter("issues", message.BoardContent.IssuesInSprint(sprint.Id))); _sprintsDetailsCache[sprint.Id] = new SprintDetailsPage(newViewModel); } return _sprintsDetailsCache[sprint.Id]; }; var viewModel = _resolver.Resolve<PickUpSprintViewModel>(new NamedParameter("sprints", sprints), new NamedParameter("followUp", followUpCallback)); var page = new PickUpSprintPage(viewModel); _navigator.NavigateTo(page); }