コード例 #1
0
        public MainWindowViewModel(IUserNavigationViewModel userNavigationViewModel, IUserDetailViewModel userDetailViewModel,
                                   IEventAggregator eventAggregator)
        {
            UserNavigationViewModel = userNavigationViewModel;
            UserDetailViewModel     = userDetailViewModel;
            _eventAggregator        = eventAggregator;

            _eventAggregator.GetEvent <AfterUserBannedEvent>().Subscribe(RemoveUserDetailAfterBan);
        }
コード例 #2
0
        public UserViewModel(
            ILogService logService,
            IDataService dataService,
            IDialogService dialogService,
            IUserRepository userRepository,
            IEventAggregator eventAggregator,
            IUserDetailViewModel userDetailViewModel)
            : base(dialogService)
        {
            _logService          = logService;
            _dataService         = dataService;
            _dialogService       = dialogService;
            _userRepository      = userRepository;
            _userDetailViewModel = userDetailViewModel;

            Users = new ObservableCollection <UserWrapper>();

            RefreshCommand    = new DelegateCommand(Load, () => !IsBusy);
            NewUserCommand    = new DelegateCommand(OnNewUserExecute, () => !IsBusy);
            UpdateUserCommand = new DelegateCommand <UserWrapper>(OnUpdateUserExecute);
            RemoveUserCommand = new DelegateCommand <int?>(OnRemoveUserExecute);

            eventAggregator.GetEvent <AfterUserSavedEvent>().Subscribe(OnAfterUserSaved);
        }
コード例 #3
0
 public MainViewModel(INavigationViewModel navigationViewModel, IUserDetailViewModel userDetailViewModel)
 {
     NavigationViewModel = navigationViewModel;
     UserDetailViewModel = userDetailViewModel;
 }
コード例 #4
0
 private void RemoveUserDetailAfterBan(int bannedUserId)
 {
     UserDetailViewModel = null;
 }