コード例 #1
0
        public MainViewModel(IStaffManagerDataService dataService)
        {
            _dataService = dataService;

            LoadDataCommand           = new Command(async() => await OnLoadData().ConfigureAwait(false));
            AddPersonCommand          = new Command(OnAddPerson);
            DeletePersonCommand       = new Command(OnDeletePerson);
            ListSelectedPeopleCommand = new Command(OnListSelectedPeople);

            _departmentVmList.CollectionChanged += (s, e) => RaisePropertyChanged(nameof(DepartmentVmsForCombo));
        }
コード例 #2
0
        public AllDepartmentsViewModel(IStaffManagerNavigationService navigationService, IStaffManagerDataService dataService)
        {
            _navigationService = navigationService;
            _dataService       = dataService;

            Caption = "All Departments";
            SetLazyLoadingMode();

            ViewDepartmentCommand = new perRelayCommand(OnViewDepartment, () => SelectedDepartment != null)
                                    .ObservesInternalProperty(this, nameof(SelectedDepartment));

            AddNewDepartmentCommand = new perRelayCommand(OnAddNewDepartment);
        }
コード例 #3
0
        public DepartmentViewModel(IStaffManagerNavigationService navigationService, IStaffManagerDataService dataService)
        {
            _dataService       = dataService;
            _navigationService = navigationService;

            // creates a expansion toggle button in lazy loading mode
            SetLazyLoadingMode();

            ViewPersonCommand = new perRelayCommand(OnViewPerson, () => SelectedPerson != null)
                                .ObservesInternalProperty(this, nameof(SelectedPerson));

            AddNewPersonCommand = new perRelayCommand(OnAddNewPerson);
        }
コード例 #4
0
        public MainViewModel(IStaffManagerDataService dataService)
        {
            _dataService = dataService;

            LoadDataCommand = new perRelayCommandAsync(OnLoadData);

            AddPersonCommand = new RelayCommand(OnAddPerson);

            DeletePersonCommand = new RelayCommand(OnDeletePerson, () => SelectedPersonVm != null)
                                  .ObservesInternalProperty(this, nameof(SelectedPersonVm));

            ListSelectedPeopleCommand = new RelayCommand(OnListSelectedPeople, () => _personVmList.Any())
                                        .ObservesCollection(_personVmList);

            _departmentVmList.CollectionChanged += (s, e) => RaisePropertyChanged(nameof(DepartmentVmsForCombo));
        }
コード例 #5
0
        public MainViewModel(IStaffManagerDataService dataService, IStaffManagerNavigationService navigationService)
        {
            _dataService       = dataService;
            _navigationService = navigationService;

            LoadDataCommand = new perRelayCommandAsync(RefreshDataAsync);
            perMessageService.RegisterMessageHandler <SelectItemMessage>(this, msg => SelectedItem = msg.SelectedItem);

            SelectPreviousSearchCommand = new RelayCommand(OnSelectPreviousSearch, () => _peopleMatchingSearchCollection.Count > 1)
                                          .ObservesCollection(_peopleMatchingSearchCollection);

            SelectNextSearchCommand = new RelayCommand(OnSelectNextSearch, () => _peopleMatchingSearchCollection.Count > 1)
                                      .ObservesCollection(_peopleMatchingSearchCollection);

            EditSelectedItemCommand = new RelayCommand(OnEditSelectedItem, () => SelectedItem is smViewModelBase)
                                      .ObservesInternalProperty(this, nameof(SelectedItem));
        }
コード例 #6
0
 public Task InitialiseAsync()
 {
     _dataService = new StaffManagerDataService();
     return(_dataService.InitialiseAsync());
 }