/// <summary> /// Initializes required information to work with screen & data. /// </summary> /// <param name="usersData">Implementation of IUsersData</param> /// <param name="userTasksData">Implementation of IUsersTasksData</param> /// <param name="tasksData">Implementation of ITasksData</param> /// <param name="categoriesData">Implementation of ICategoriesData</param> public ShellViewModel(IUsersData usersData, IUserTasksData userTasksData, ITasksData tasksData, ICategoriesData categoriesData) { _eventTracker = EventAggregatorProvider.GetInstance(); _usersData = usersData; _userTasksData = userTasksData; _tasksData = tasksData; _categoriesData = categoriesData; AvailableUsers = new BindableCollection <UserModel>(_usersData?.GetUsers() ?? new List <UserModel>()); }
/// <summary> /// Initializes required information to work with screen & user tasks. /// </summary> /// <param name="user">User for whom the tasks are displayed for</param> /// <param name="usersData">IUsersData implementation</param> /// <param name="userTasksData">IUserTasksData implementation</param> /// <param name="tasksData">ITasksData implementation</param> /// <param name="categoriesData">ICategoriesData implementation</param> public UserTasksViewModel(UserModel user, IUsersData usersData, IUserTasksData userTasksData, ITasksData tasksData, ICategoriesData categoriesData) { _user = user; _usersData = usersData; _userTasksData = userTasksData; _tasksData = tasksData; _categoriesData = categoriesData; _eventTracker = EventAggregatorProvider.GetInstance(); LoadUserTasks(); }