Пример #1
0
 public DoubanMusicService(MusicServiceType service_type = MusicServiceType.SongList)
 {
     ServiceType        = service_type;
     this.Player.Source = service_type == MusicServiceType.MHz ? this.MHzChannelList : this.SongPlayList;
     this.RegisterListEventHandlers();
     this.SetSongListPlayerStyleIfNeed(service_type);
     this.Player.Volume = AppResources.Volumn;
 }
Пример #2
0
        public static void InitServiceStyle(this DoubanMusicService service, MusicServiceType type)
        {
            switch (type)
            {
            case MusicServiceType.MHz:
                service.ChangeServiceChoice(type);
                break;

            case MusicServiceType.SongList:
                service.ChangeServiceChoice(type);
                break;
            }
        }
Пример #3
0
        private void SetSongListPlayerStyleIfNeed(MusicServiceType service_type)
        {
            Player.MediaEnded += OnMediaEnded;
            if (service_type == MusicServiceType.MHz)
            {
                return;
            }
            var player_type = SettingsHelper.ReadSettingsValue(SettingsSelect.BackPlayType);

            PlayType = player_type is string?
                       EnumHelper.Parse <MusicServicePlayType>(player_type as string) :
                           MusicServicePlayType.StreamPlay;

            this.InitPlayStyle(PlayType);
        }
Пример #4
0
        public bool ChangeServiceChoice(MusicServiceType type)
        {
            if (type == ServiceType)
            {
                return(true);
            }
            var succeed = this.ResetPlayer();

            if (succeed)
            {
                this.ServiceType             = type;
                this.Player.Source           = PlaybackList;
                this.Player.IsLoopingEnabled = false;
                this.SetSongListPlayerStyleIfNeed(type);
            }
            return(succeed);
        }