/// <summary> /// Erzeugt eine Instanz der Klasse GroupDetailsViewModel. /// </summary> /// <param name="navService">Eine Referenz auf den Navigationsdienst der Anwendung.</param> /// <param name="errorMapper">Eine Referenz auf den Fehlerdienst der Anwendung.</param> public GroupDetailsViewModel(INavigationService navService, IErrorMapper errorMapper) : base(navService, errorMapper) { // Erzeuge Controller-Instanz. groupController = new GroupController(this); IsGroupParticipant = false; HasLeaveOption = false; localUser = groupController.GetLocalUser(); if (BallotCollection == null) BallotCollection = new ObservableCollection<Ballot>(); if (ConversationCollection == null) ConversationCollection = new ObservableCollection<Conversation>(); // Erzeuge Befehle. JoinGroupCommand = new AsyncRelayCommand( param => executeJoinGroupCommandAsync(), param => canJoinGroup()); LeaveGroupCommand = new AsyncRelayCommand( param => executeLeaveGroupCommandAsync(), param => canLeaveGroup()); EditGroupCommand = new RelayCommand( param => executeEditGroupCommand(), param => canEditGroup()); ConversationSelectedCommand = new RelayCommand( param => executeConversationSelectedCommand(param)); SynchronizeDataCommand = new AsyncRelayCommand( param => executeSynchronizeDataCommandAsync(), param => canSynchronizeData()); DeleteGroupCommand = new AsyncRelayCommand( param => executeDeleteGroupAsync(), param => canDeleteGroup()); DeleteGroupLocallyCommand = new RelayCommand( param => executeDeleteGroupLocallyCommand(), param => canDeleteGroupLocally()); ChangeToGroupSettingsCommand = new RelayCommand( param => executeChangeToGroupSettingsCommand(), param => canChangeToGroupSettings()); ChangeToAddConversationDialog = new RelayCommand( param => executeChangeToAddConversationDialog(), param => canChangeToAddConversationDialog()); BallotSelectedCommand = new RelayCommand( param => executeBallotSectedCommand(param)); SwitchToCreateBallotDialogCommand = new RelayCommand( param => executeSwitchToCreateBallotDialogCommand(), param => canSwitchToCreateBallotDialog()); SwichToGroupParticipantsViewCommand = new RelayCommand( param => executeSwitchToGroupParticipantsView(), param => canSwitchToGroupParticipantsView()); }
/// <summary> /// Erzeugt eine Instanz der Klasse BallotDetailsViewModel. /// </summary> /// <param name="navService">Eine Referenz auf den Navigationsdienst der Anwendung.</param> /// <param name="errorMapper">Eine Referenz auf den Fehlerdienst der Anwendung.</param> public BallotDetailsViewModel(INavigationService navService, IErrorMapper errorMapper) : base (navService, errorMapper) { groupController = new GroupController(this); localUser = groupController.GetLocalUser(); if (BallotOptionCollection == null) BallotOptionCollection = new ObservableCollection<Option>(); if (VoteResultsCollection == null) VoteResultsCollection = new ObservableCollection<VoteResult>(); PlaceVotesCommand = new AsyncRelayCommand( param => executePlaceVotesCommand(), param => canPlaceVotes()); SynchronizeBallotCommand = new AsyncRelayCommand( param => executeSynchronizeBallotCommand(), param => canSynchronizeBallot()); SwitchToEditDialogCommand = new RelayCommand( param => executeSwitchToEditDialogCommand(), param => canSwitchToEditDialog()); DeleteBallotCommand = new AsyncRelayCommand( param => executeDeleteBallotAsync(), param => canDeleteBallot()); }