Example #1
0
 void Instance_PlayStateChanged(object sender, EventArgs e)
 {
     if (BackgroundAudioPlayer.Instance.Track != null)
     {
         var track = BackgroundAudioPlayer.Instance.Track;
         if (PivotIndex == 0)
         {
             var _a = CurrentTracks.FirstOrDefault(a => a.Track.Audio.Preview.Contains(track.Source.ToString()));
             foreach (var obsTrack in CurrentTracks)
             {
                 obsTrack.IsPlay = false;
                 if (_a != null && obsTrack.Track.Id == _a.Track.Id && BackgroundAudioPlayer.Instance.PlayerState != PlayState.Paused)
                 {
                     obsTrack.IsPlay = true;
                 }
             }
         }
         else
         {
             var _a = GeneralTracks.FirstOrDefault(a => a.Track.Audio.Preview.Contains(track.Source.ToString()));
             foreach (var obsTrack in GeneralTracks)
             {
                 obsTrack.IsPlay = false;
                 if (_a != null && obsTrack.Track.Id == _a.Track.Id && BackgroundAudioPlayer.Instance.PlayerState != PlayState.Paused)
                 {
                     obsTrack.IsPlay = true;
                 }
             }
         }
     }
 }
Example #2
0
 private void BindingGeneralTrack(IEnumerable <Track> checkin)
 {
     GeneralTracks = checkin.Select(s => new ObsTrack {
         IsPlay = false, Track = s
     }).ToList();
     NoGeneralTracksVisibility = !GeneralTracks.Any();
 }
Example #3
0
        private void Play(ObsTrack obj)
        {
            //List<AudioTrack> list = new List<AudioTrack>();
            //if (PivotIndex == 0)
            //{
            //    list =
            //        CurrentTracks.Select(
            //            t => new AudioTrack(new Uri(obj.Track.Audio.Preview), obj.Track.Name, obj.Track.Artist.Name, obj.Track.Album, null)).ToList();
            //   AudioPlayer.currentTrackNumber= CurrentTracks.IndexOf(obj);
            //}
            //else
            //{
            //    list =
            //        GeneralTracks.Select(
            //            t => new AudioTrack(new Uri(obj.Track.Audio.Preview), obj.Track.Name, obj.Track.Artist.Name, obj.Track.Album, null)).ToList();
            //    AudioPlayer.currentTrackNumber = GeneralTracks.IndexOf(obj);
            //}
            var i    = 0;
            var list = new List <Track>();

            if (PivotIndex == 0)
            {
                list =
                    CurrentTracks.Select(
                        t => t.Track).ToList();
                i = CurrentTracks.IndexOf(obj);
            }
            else
            {
                list =
                    GeneralTracks.Select(
                        t => t.Track).ToList();
                i = GeneralTracks.IndexOf(obj);
            }
            using (var ifs = new IsolatedStorageFileStream("playlist.xml", FileMode.Create, IsolatedStorageFile.GetUserStoreForApplication()))
            {
                var ser = new DataContractJsonSerializer(list.GetType());

                ser.WriteObject(ifs, list);
            }
            using (var ifs = new IsolatedStorageFileStream("track.xml", FileMode.Create, IsolatedStorageFile.GetUserStoreForApplication()))
            {
                var ser = new DataContractJsonSerializer(i.GetType());

                ser.WriteObject(ifs, i);
            }



            //BackgroundAudioPlayer.Instance.Track = new AudioTrack(new Uri(obj.Track.Audio.Preview), obj.Track.Name, obj.Track.Artist.Name, obj.Track.Album, null);

            BackgroundAudioPlayer.Instance.Play();
        }