protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); Assert.ObjectOfType <UserOverviewViewModelParams>(e.Parameter); this.ViewModel = ServiceRegistry.ViewModelFactory.CreateUserOverviewViewModel((UserOverviewViewModelParams)e.Parameter); this.DataContext = this.ViewModel; this.userFlowViewModel = new ContentUserControlViewModel <ITrackViewModel>(this.ViewModel, nameof(IUserOverviewViewModel.Flow), nameof(IUserOverviewViewModel.FlowFetchState), () => this.ViewModel.Flow, () => this.ViewModel.FlowFetchState, _ => { }, ServiceRegistry.PlatformServices); this.userPlaylistsViewModel = new ContentUserControlViewModel <IPlaylistViewModel>(this.ViewModel, nameof(IUserOverviewViewModel.Playlists), nameof(IUserOverviewViewModel.PlaylistFetchState), () => this.ViewModel.Playlists, () => this.ViewModel.PlaylistFetchState, OnPlaylistSelected, ServiceRegistry.PlatformServices); this.FlowList.DataContext = this.userFlowViewModel; this.PlaylistGrid.DataContext = this.userPlaylistsViewModel; }
protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); this.ViewModel = ServiceRegistry.ViewModelFactory.CreateWhatsNewViewModel(); this.DataContext = this.ViewModel; this.newAlbumsViewModel = new ContentUserControlViewModel <IAlbumViewModel>(this.ViewModel, nameof(IWhatsNewViewModel.NewReleases), nameof(IWhatsNewViewModel.NewReleaseFetchState), () => this.ViewModel.NewReleases, () => this.ViewModel.NewReleaseFetchState, OnNewReleaseSelected, ServiceRegistry.PlatformServices); this.deezerPicksViewModel = new ContentUserControlViewModel <IAlbumViewModel>(this.ViewModel, nameof(IWhatsNewViewModel.DeezerPicks), nameof(IWhatsNewViewModel.DeezerPicksFetchState), () => this.ViewModel.DeezerPicks, () => this.ViewModel.DeezerPicksFetchState, OnDeezerPickSelected, ServiceRegistry.PlatformServices); this.NewAlbumGrid.DataContext = this.newAlbumsViewModel; this.DeezerPicksGrid.DataContext = this.deezerPicksViewModel; }
protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); Assert.ObjectOfType <ArtistOverviewViewModelParams>(e.Parameter); this.ViewModel = ServiceRegistry.ViewModelFactory.CreateArtistOverviewViewModel((ArtistOverviewViewModelParams)e.Parameter); this.DataContext = ViewModel; this.albumsViewModel = new ContentUserControlViewModel <IAlbumViewModel>(this.ViewModel, nameof(IArtistOverviewViewModel.Albums), nameof(IArtistOverviewViewModel.AlbumFetchState), () => this.ViewModel.Albums, () => this.ViewModel.AlbumFetchState, OnAlbumSelected, ServiceRegistry.PlatformServices); this.topTrackViewModel = new ContentUserControlViewModel <ITrackViewModel>(this.ViewModel, nameof(IArtistOverviewViewModel.TopTracks), nameof(IArtistOverviewViewModel.TopTrackFetchState), () => this.ViewModel.TopTracks, () => this.ViewModel.TopTrackFetchState, _ => { }, ServiceRegistry.PlatformServices); this.featuredOnViewModel = new ContentUserControlViewModel <IPlaylistViewModel>(this.ViewModel, nameof(IArtistOverviewViewModel.FeaturedPlaylists), nameof(IArtistOverviewViewModel.FeaturedPlaylistFetchState), () => this.ViewModel.FeaturedPlaylists, () => this.ViewModel.FeaturedPlaylistFetchState, OnPlaylistSelected, ServiceRegistry.PlatformServices); this.relatedArtistViewModel = new ContentUserControlViewModel <IArtistViewModel>(this.ViewModel, nameof(IArtistOverviewViewModel.RelatedArtists), nameof(IArtistOverviewViewModel.RelatedArtistFetchState), () => this.ViewModel.RelatedArtists, () => this.ViewModel.RelatedArtistFetchState, OnArtistSelected, ServiceRegistry.PlatformServices); this.AlbumGrid.DataContext = this.albumsViewModel; this.TopTrackList.DataContext = this.topTrackViewModel; this.ArtistGrid.DataContext = this.relatedArtistViewModel; this.PlaylistGrid.DataContext = this.featuredOnViewModel; }
protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); this.ViewModel = e.Parameter as ISearchViewModel; this.DataContext = this.ViewModel; this.albumResultViewModel = new ContentUserControlViewModel <IAlbumViewModel>(this.ViewModel, nameof(ISearchViewModel.Albums), nameof(ISearchViewModel.AlbumResultFetchState), () => this.ViewModel.Albums, () => this.ViewModel.AlbumResultFetchState, OnAlbumSelected, ServiceRegistry.PlatformServices); this.trackResultViewModel = new ContentUserControlViewModel <ITrackViewModel>(this.ViewModel, nameof(ISearchViewModel.Tracks), nameof(ISearchViewModel.TrackResultFetchState), () => this.ViewModel.Tracks, () => this.ViewModel.TrackResultFetchState, _ => { }, ServiceRegistry.PlatformServices); this.artistResultViewModel = new ContentUserControlViewModel <IArtistViewModel>(this.ViewModel, nameof(ISearchViewModel.Artists), nameof(ISearchViewModel.ArtistResultFetchState), () => this.ViewModel.Artists, () => this.ViewModel.ArtistResultFetchState, OnArtistSelected, ServiceRegistry.PlatformServices); this.playlistResultViewModel = new ContentUserControlViewModel <IPlaylistViewModel>(this.ViewModel, nameof(ISearchViewModel.Playlists), nameof(ISearchViewModel.PlaylistResultFetchState), () => this.ViewModel.Playlists, () => this.ViewModel.PlaylistResultFetchState, OnPlaylistSelected, ServiceRegistry.PlatformServices); this.AlbumGrid.DataContext = this.albumResultViewModel; this.TrackList.DataContext = this.trackResultViewModel; this.ArtistGrid.DataContext = this.artistResultViewModel; this.PlaylistGrid.DataContext = this.playlistResultViewModel; }
protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); this.ViewModel = ServiceRegistry.ViewModelFactory.CreateChartsViewModel(); this.DataContext = this.ViewModel; this.trackChartViewModel = new ContentUserControlViewModel <ITrackViewModel>(this.ViewModel, nameof(IChartsViewModel.TrackChart), nameof(IChartsViewModel.TrackChartFetchState), () => this.ViewModel.TrackChart, () => this.ViewModel.TrackChartFetchState, _ => { }, ServiceRegistry.PlatformServices); this.albumChartViewModel = new ContentUserControlViewModel <IAlbumViewModel>(this.ViewModel, nameof(IChartsViewModel.AlbumChart), nameof(IChartsViewModel.AlbumChartFetchState), () => this.ViewModel.AlbumChart, () => this.ViewModel.AlbumChartFetchState, OnAlbumSelected, ServiceRegistry.PlatformServices); this.artistChartViewModel = new ContentUserControlViewModel <IArtistViewModel>(this.ViewModel, nameof(IChartsViewModel.ArtistChart), nameof(IChartsViewModel.ArtistChartFetchState), () => this.ViewModel.ArtistChart, () => this.ViewModel.ArtistChartFetchState, OnArtistSelected, ServiceRegistry.PlatformServices); this.playlistChartViewModel = new ContentUserControlViewModel <IPlaylistViewModel>(this.ViewModel, nameof(IChartsViewModel.PlaylistChart), nameof(IChartsViewModel.PlaylistChartFetchState), () => this.ViewModel.PlaylistChart, () => this.ViewModel.PlaylistChartFetchState, OnPlaylistSelected, ServiceRegistry.PlatformServices); this.TrackList.DataContext = this.trackChartViewModel; this.AlbumGrid.DataContext = this.albumChartViewModel; this.ArtistGrid.DataContext = this.artistChartViewModel; this.PlaylistGrid.DataContext = this.playlistChartViewModel; }
protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); var vm = ServiceRegistry.ViewModelFactory.CreateMyDeezerViewModel(); this.ViewModel = vm; this.DataContext = vm; this.favouriteTracksViewModel = new ContentUserControlViewModel <ITrackViewModel>(this.ViewModel, nameof(IMyDeezerViewModel.FavouriteTracks), nameof(IMyDeezerViewModel.TrackFetchState), () => this.ViewModel.FavouriteTracks, () => this.ViewModel.TrackFetchState, _ => { }, ServiceRegistry.PlatformServices); this.favouriteAlbumsViewModel = new ContentUserControlViewModel <IAlbumViewModel>(this.ViewModel, nameof(IMyDeezerViewModel.FavouriteAlbums), nameof(IMyDeezerViewModel.AlbumFetchState), () => this.ViewModel.FavouriteAlbums, () => this.ViewModel.AlbumFetchState, OnAlbumSelected, ServiceRegistry.PlatformServices); this.favouriteArtistsViewModel = new ContentUserControlViewModel <IArtistViewModel>(this.ViewModel, nameof(IMyDeezerViewModel.FavouriteArtists), nameof(IMyDeezerViewModel.ArtistFetchState), () => this.ViewModel.FavouriteArtists, () => this.ViewModel.ArtistFetchState, OnArtistSelected, ServiceRegistry.PlatformServices); this.FavouriteTrackList.DataContext = this.favouriteTracksViewModel; this.FavouriteAlbumGrid.DataContext = this.favouriteAlbumsViewModel; this.FavouriteArtistGrid.DataContext = this.favouriteArtistsViewModel; this.LoginButton.Click += OnLoginButtonClicked; this.LogoutButton.Click += OnLogoutButtonClicked; }