コード例 #1
0
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            List <IntelligentString> tags = new List <IntelligentString>();

            Boolean?showHidden = value as Boolean?;

            MediaPlayerDialog mpd       = Application.Current.MainWindow as MediaPlayerDialog;
            List <object>     lstValues = new List <object>();

            lstValues.Add(mpd.Songs);
            lstValues.Add(showHidden);

            SongViewGenresConverter songGenres = new SongViewGenresConverter();

            tags.AddRange((IEnumerable <IntelligentString>)songGenres.Convert(lstValues.ToArray(), targetType, parameter, culture));

            SongViewArtistsConverter songArtists = new SongViewArtistsConverter();

            tags.AddRange((IEnumerable <IntelligentString>)songArtists.Convert(lstValues.ToArray(), targetType, parameter, culture));

            SongViewAlbumsConverter songAlbums = new SongViewAlbumsConverter();

            tags.AddRange((IEnumerable <IntelligentString>)songAlbums.Convert(lstValues.ToArray(), targetType, parameter, culture));

            tags.Sort();
            return(tags.ToArray());
        }
コード例 #2
0
        private async void Element_Click(object sender, RoutedEventArgs e)
        {
            // It stays on top of the dialog.
            MovieCommands.Hide();

            var movie  = (sender as FrameworkElement)?.DataContext as Movie;
            var source = MediaSource.CreateFromUri(new Uri(movie.TrailerUrl));

            TitleText.Text = movie.Title;
            Player.Source  = source;
            await MediaPlayerDialog.ShowAsync();
        }
コード例 #3
0
        public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            if (values.Length == 2)
            {
                Boolean?showHidden = values[1] as Boolean?;

                MediaPlayerDialog mpd = Application.Current.MainWindow as MediaPlayerDialog;

                List <object> lstValues = new List <object>();
                lstValues.Add(mpd.Songs);
                lstValues.Add(showHidden);

                UnfilteredArtistsConverter upc = new UnfilteredArtistsConverter();
                return(upc.Convert(lstValues.ToArray(), targetType, parameter, culture));
            }

            return(null);
        }
コード例 #4
0
        /// <summary>
        /// Gets or sets the available file types for the specified media item
        /// </summary>
        public static FileType[] GetFileTypesForMediaItem(MediaItem mediaItem)
        {
            if (mediaItem != null)
            {
                MediaPlayerDialog mpd = Application.Current.MainWindow as MediaPlayerDialog;

                if (mpd != null)
                {
                    switch (mediaItem.Type)
                    {
                    case MediaItemTypeEnum.Video:
                        return(mpd.VideoFileTypes.ToArray());

                    case MediaItemTypeEnum.Song:
                        return(mpd.SongFileTypes.ToArray());

                    default:
                        throw new UnknownEnumValueException(mediaItem.Type);
                    }
                }
            }

            return(null);
        }