private void TapPlayDetail_OnTapped(object sender, EventArgs e) { var img = ((Image)sender); Albumlist album = img.BindingContext as Albumlist; var _vm = MainViewModel.GetInstance().PlaylistViewModel; _vm.AlbumSongCommand.Execute(album); }
private async void TapDetail_OnTapped(object sender, EventArgs e) { var img = ((Image)sender); Albumlist album = img.BindingContext as Albumlist; var main = MainViewModel.GetInstance(); main.PlaylistViewModel.PlaylistSongs = album.AlbumsSongs; // await DependencyService.Get<IMusicManager>().SetQueue(album.Songs); await Navigation.PushAsync(new SonglistPage(album)); }
private async void Button_Album(object sender, EventArgs e) { Albumlist album = this.BindingContext as Albumlist; //SongslistListView.IsVisible = false; //playlistListView.IsVisible = false; //albumListView.IsVisible = true; //await DependencyService.Get<IMusicManager>().SetQueue(new ObservableCollection<Song>( // vm.Songs.Select(s => new Models.Song(s)))); //DependencyService.Get<IMusicManager>().Shuffle(); }
public SonglistPage(Albumlist albumlist) { InitializeComponent(); // this.BindingContext = MusicStateViewModel.Instance; // Carousel.Position = MusicStateViewModel.Instance.QueuePos; if (albumlist != null && albumlist.AlbumsSongs.Count > 0) { Title.Text = albumlist.Name; Artist.Text = albumlist.AlbumsSongs[0].Artist; img.Source = albumlist.ImageSource; } _nav = Navigation; }
public async Task <IList <Albumlist> > GetSongsByAlbum() { return(await Task.Run <IList <Albumlist> >(() => { IList <Albumlist> albumlist = new ObservableCollection <Albumlist>(); var db = new DataService(); // var album = db.GetAbumById(albumId); var songs = db.GetAllSongs(); var albumgroup = songs.GroupBy(x => new { Id = x.albumId, Name = x.Album }).Select(album => new { AlbumId = album.Key.Id, AlbumName = album.Key.Name, Songs = album.ToList() }); // var duration = 4.5; foreach (var album in albumgroup) { var alb = new Albumlist { Id = (int)album.AlbumId, Name = album.AlbumName, Artwork = album.Songs[0].ArtWork, ImageSource = ImageSource.FromStream(() => new MemoryStream(album.Songs[0].ArtWork)) }; // var songs = db.GetSongById(alb.Id); if (album.Songs != null) { alb.AlbumsSongs = new List <Song>(); foreach (var song in album.Songs) { alb.AlbumsSongs.Add(new Song { Id = (int)song.LibraryId, Title = song.AudioTitle, Artist = song.ArtistName, Album = song.Album, Genre = song.Genre, Duration = 1000, Uri = song.AudioData, Artwork = song.ArtWork, ImageSource = ImageSource.FromStream(() => new MemoryStream(song.ArtWork)) }); } } albumlist.Add(alb); } return albumlist; })); }
private async void TapPlayDetail_OnTapped(object sender, EventArgs e) { var img = ((Image)sender); PlaylistItem playlistItem = img.BindingContext as PlaylistItem; var songsPlaylist = await DependencyService.Get <IPlaylistManager>().GetPlaylistSongs(playlistItem.Playlist.Id); var main = MainViewModel.GetInstance(); main.PlaylistViewModel.Songs = songsPlaylist; var album = new Albumlist(); album.Name = playlistItem.Playlist.Title; album.AlbumsSongs = songsPlaylist; // await DependencyService.Get<IMusicManager>().SetQueue(album.Songs); await Navigation.PushAsync(new SonglistPage(album)); }