public void EliminarPorIndice(int indice)
 {
     if (ElementosLista.Count > 0)
     {
         ElementoMultimedia eliminar = ElementosLista[indice].elemento;
         //eliminar.CancelarDescarga = true;
         ElementosLista.RemoveAt(indice);
         ReasignarIndices();
     }
 }
 public ElementoMultimedia ObtenerSiguiente()
 {
     if (ElementosLista.Count > 0)
     {
         ElementoMultimedia siguiente = ElementosLista[0].elemento;
         ElementosLista.RemoveAt(0);
         ReasignarIndices();
         return(siguiente);
     }
     return(null);
 }
 public ElementoMultimedia ReproducirPorIndice(int indice)
 {
     if (ElementosLista != null && ElementosLista.Count > 0 && indice < ElementosLista.Count)
     {
         ElementoMultimedia siguiente = ElementosLista[indice].elemento;
         //if (siguiente.TipoElemento == ElementoMultimedia.TipoElementoMultimedia.YouTube && !siguiente.Descargado)
         //{
         //    return ReproducirPorIndice(indice + 1); ;
         //}
         ElementosLista.RemoveAt(indice);
         ReasignarIndices();
         return(siguiente);
     }
     return(null);
 }
        private void CargarListaReproduccionGuardada()
        {
            Variable var             = Compartidos.ObtenerVariablesListaReproduccion();
            int      numeroElementos = var.ObtenerValorVariable <Int32>("NUMERO_ELEMENTOS");

            if (numeroElementos == 0)
            {
                return;
            }

            ElementosLista = new List <ElementoListaReproduccion>();
            for (int i = 0; i < numeroElementos; i++)
            {
                try
                {
                    Agrupador agrupadorTemp            = new Agrupador();
                    Agrupador agrupadorPadreTemp       = new Agrupador();
                    ElementoListaReproduccion elemento = new ElementoListaReproduccion();
                    elemento.NumeroPista = i + 1;
                    ElementoMultimedia elMul = new ElementoMultimedia();
                    elMul.Titulo = var.ObtenerValorVariable <String>("ELEMENTO_" + i + "_TITULO"); //, elemento.elemento.Titulo);
                    String tipo = var.ObtenerValorVariable <String>("ELEMENTO_" + i + "_TIPO");    //, elemento.elemento.TipoElemento.ToString());
                    agrupadorTemp.NombreAgrupador      = var.ObtenerValorVariable <String>("ELEMENTO_" + i + "_NOMBRE_AGRUPADOR");
                    agrupadorPadreTemp.NombreAgrupador = var.ObtenerValorVariable <String>("ELEMENTO_" + i + "_NOMBRE_AGRUPADOR_PADRE");
                    agrupadorTemp.AgrupadorPadre       = agrupadorPadreTemp;

                    agrupadorPadreTemp.AgrupadorPadre = new Agrupador()
                    {
                        NombreAgrupador = var.ObtenerValorVariable <String>("ELEMENTO_" + i + "_NOMBRE_AGRUPADOR_CATEGORIA")
                    };

                    if (tipo.Equals("Karaoke"))
                    {
                        elMul.TipoElemento = ElementoMultimedia.TipoElementoMultimedia.Karaoke;
                    }
                    else if (tipo.Equals("Musica"))
                    {
                        elMul.TipoElemento = ElementoMultimedia.TipoElementoMultimedia.Musica;
                    }
                    else if (tipo.Equals("Video"))
                    {
                        elMul.TipoElemento = ElementoMultimedia.TipoElementoMultimedia.Video;
                    }

                    elMul.URL           = var.ObtenerValorVariable <String>("ELEMENTO_" + i + "_URL");    //, elemento.elemento.URL);
                    elemento.ImagenRuta = var.ObtenerValorVariable <String>("ELEMENTO_" + i + "_IMAGEN"); //, elemento.ImagenRuta);
                    if (elemento.ImagenRuta.Equals(""))
                    {
                        elemento.Imagen = Herramientas.WPF.Utilidades.CargarImagenURLABitmapImage(@"Imagenes\cd_estandar.png");
                    }
                    else
                    {
                        elemento.Imagen = Herramientas.WPF.Utilidades.CargarImagenURLABitmapImage(elemento.ImagenRuta);
                    }

                    agrupadorTemp.ImagenTexto = elemento.ImagenRuta;
                    elemento.elemento         = elMul;
                    elMul.AgrupadorContiene   = agrupadorTemp;
                    if (agrupadorTemp.NombreAgrupador.Equals(""))
                    {
                        elMul.AgrupadorContiene = null;
                    }
                    ElementosLista.Add(elemento);
                }
                catch { }
            }
        }