//AÑADE DIA DE ENTRENAMIENTO Y MEDIDA AL DIARIO DE ENTRENAMIENTO
 public void AñadirDiaYMedida(DiaEntrenamiento dia, Medida medida)
 {
     if (this.DiarioEntrenamientos.ContainsKey(dia))
     {
         this.DiarioEntrenamientos.Remove(dia);
         this.DiarioEntrenamientos.Add(dia, medida);
     }
     else
     {
         this.DiarioEntrenamientos.Add(dia, medida);
     }
 }
        //OBTIENE LOS ATRIBUTOS EN FUNCION DE LA FECHA DE LA MEDIDA (VALUE)
        public string[] ObtenerAtributosMedida(DateTime fecha)
        {
            string[] atributos = null;

            foreach (KeyValuePair <DiaEntrenamiento, Medida> celda in this.DiarioEntrenamientos)
            {
                if (celda.Key.Fecha.Date.Equals(fecha.Date) && celda.Value != null)
                {
                    Medida medida = celda.Value;
                    atributos = new string[] { medida.Peso.ToString() + "Kg", medida.CircunferenciaAbdominal.ToString() + " cms", medida.Notas, celda.Key.Fecha.Date.ToString("dd-MM-yyyy tt") };
                }
            }
            return(atributos);
        }
        //OBTIENE LOS ATRIBUTOS DE ACTIVIDAD EN FORMA DE ARRAY
        public List <string[]> ObtenerAtributosMedida()
        {
            List <string[]> atributosMedida = new List <string[]>();

            foreach (KeyValuePair <DiaEntrenamiento, Medida> celda in this.DiarioEntrenamientos)
            {
                Medida medida = celda.Value;

                if (medida != null)
                {
                    atributosMedida.Add(new string[] { medida.Peso.ToString() + " Kg", medida.CircunferenciaAbdominal.ToString() + " cms", medida.Notas, celda.Key.Fecha.Date.ToString("dd-MM-yyyy tt") });
                }
            }
            return(atributosMedida);
        }
 //AÑADE UNA MEDIDA AL DIARIO ENTRENAMIENTO
 public void AñadirMedida(Medida medida)
 {
     if (this.DiaEntrenamiento != null)
     {
         if (this.DiarioEntrenamientos.ContainsKey(this.DiaEntrenamiento))
         {
             this.DiarioEntrenamientos.Remove(this.DiaEntrenamiento);
             this.DiarioEntrenamientos.Add(this.DiaEntrenamiento, medida);
         }
         else
         {
             if (this.DiaEntrenamiento != null)
             {
                 this.DiarioEntrenamientos.Add(this.DiaEntrenamiento, medida);
             }
             else
             {
                 Console.WriteLine("Primero añade el día actual antes de añadir medidas");
             }
         }
     }
 }
        //SE USA AL INICIAR EL PROGRAMA. CARGA LOS DATOS DEL XML PASADO POR PARÁMETRO Y LOS VUELCA EN EL PROGRAMA PARA
        //PODER TRABAJAR CON ELLOS DE FORMA NORMAL
        public void cargarBaseUsandoXML(string nombreArchivo)
        {
            if (File.Exists(nombreArchivo))
            {
                XElement leer = XElement.Load(nombreArchivo);

                foreach (var dia in leer.Elements("Dia"))
                {
                    DiaEntrenamiento diaEntrenam = new DiaEntrenamiento(
                        (int)dia.Element("dia"),
                        (int)dia.Element("mes"), (int)dia.Element("año"));

                    foreach (var act in dia.Element("Actividades").Elements("Actividad"))
                    {
                        Tiempo tempAñadir = new Tiempo(
                            int.Parse(act.Element("Tiempo").Element("Minutos").Value),
                            int.Parse(act.Element("Tiempo").Element("Segundos").Value)
                            );
                        Circuito circAñadir = new Circuito(
                            int.Parse(act.Element("Circuito").Element("Id").Value),
                            double.Parse(act.Element("Circuito").Element("Distancia").Value),
                            act.Element("Circuito").Element("Lugar").Value,
                            act.Element("Circuito").Element("Url").Value,
                            act.Element("Circuito").Element("Nota").Value);

                        Actividad actAñadir = new Actividad(
                            int.Parse(act.Element("Id").Value),
                            tempAñadir,
                            double.Parse(act.Element("Distancia").Value),
                            circAñadir,
                            act.Element("Nota").Value
                            );
                        diaEntrenam.AñadirActividad(actAñadir);
                    }

                    if (dia.Element("Medida").HasElements)
                    {
                        XElement med = dia.Element("Medida");

                        Medida medidas = new Medida(
                            Double.Parse((string)med.Element("Peso")),
                            Double.Parse((string)med.Element("Circunferencia")),
                            (string)med.Element("Nota"));

                        DiarioEntrenamientos.Add(diaEntrenam, medidas);
                    }
                    else
                    {
                        DiarioEntrenamientos.Add(diaEntrenam, null);
                    }
                }

                foreach (var circ in leer.Element("Circuitos").Elements("Circuito"))
                {
                    Circuito circAñadir = new Circuito(
                        int.Parse(circ.Element("Id").Value),
                        double.Parse(circ.Element("Distancia").Value),
                        circ.Element("Lugar").Value,
                        circ.Element("Url").Value,
                        circ.Element("Nota").Value);

                    Circuitos.Add(circAñadir);
                }
            }
        }
 public DiarioEntrenamiento(DiaEntrenamiento diaEntrenamiento, Medida medidas)
 {
     DiarioEntrenamientos = new Dictionary <DiaEntrenamiento, Medida>();
     DiarioEntrenamientos.Add(diaEntrenamiento, medidas);
     this.DiaEntrenamiento = diaEntrenamiento;
 }