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; }
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; } }
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); }
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); }