public void OnNavigatedTo(NavigationContext navigationContext) { try { this.m_FriendsMainViewModel = navigationContext.Parameters[typeof(FriendsViewModel).GetHashCode().ToString()] as IFriendsMainViewModel; this.m_FriendsMainViewModel.Friends.CollectionChanged -= Friends_CollectionChanged; this.m_FriendsMainViewModel.Friends.CollectionChanged += Friends_CollectionChanged; } catch (ArgumentNullException argsNullException) { GlobalLogger.Log(argsNullException.Message); } catch (NullReferenceException nullRefException) { GlobalLogger.Log(nullRefException.Message); } catch (InvalidCastException invalidCastException) { GlobalLogger.Log(invalidCastException.Message); } }
public FriendsViewModel(ILoggerFacade logger, IRegionManager regionManager, IEventAggregator eventAggregator, ICollectFriendsService collectFriendsService, IGetRoomInfoService getRoomInfoService, IFriendsMainViewModel friendsMainViewModel) { if (null == logger) { throw new ArgumentNullException("logger"); } if (null == regionManager) { throw new ArgumentNullException("regionManager"); } if (null == eventAggregator) { throw new ArgumentNullException("eventAggregator"); } if (null == collectFriendsService) { throw new ArgumentNullException("collectFriendsService"); } if (null == getRoomInfoService) { throw new ArgumentNullException("getRoomInfoService"); } if (null == friendsMainViewModel) { throw new ArgumentNullException("friendsMainViewModel"); } this.m_Logger = logger; this.m_RegionManager = regionManager; this.m_EventAggregator = eventAggregator; this.m_CollectFriendsService = collectFriendsService; this.m_GetRoomInfoService = getRoomInfoService; this.FriendsMainViewModel = friendsMainViewModel; this.NavigateToForwardCommand = new DelegateCommand(ExecuteNavigateToForwardCommand); this.ItemDoubleClickedCommand = new DelegateCommand <Friend>(ExecuteItemDoubleClickedCommand); Task.Run(() => m_CollectFriendsService.CollectFriends(AuthRepository.MQKeyInfo.UserSid, friendsMainViewModel.Friends)); }