private void Aceptar_Click(object sender, EventArgs e) { try { Grado g = (Grado)comboGrado.SelectedItem; Asignatura a = (Asignatura)comboAsig.SelectedItem; TipoActividadE tipo; Enum.TryParse <TipoActividadE>(comboTipoAct.SelectedItem.ToString(), true, out tipo); Usuario responsable = null; if (!tipo.ToString().Equals("VOLUNTARIADO")) { if (comboResponsable.SelectedItem == null) { throw new Exception("Debe tener un responsable"); } responsable = (Usuario)comboResponsable.SelectedItem; } List <Competencia> comps = new List <Competencia>(); foreach (Competencia c in listCompetencias.SelectedItems) { comps.Add(c); } //ACTUALIZAR EN LA BD if (g != null) { act.Grado = g; } if (a != null) { act.Asignatura = a; } act.TipoAct = tipo; if (responsable != null) { act.Responsable = responsable; } foreach (Competencia c in comps) { act.AddCompetencia(c); } if (tipo.ToString().Equals("VOLUNTARIADO")) { act.EstadoAct = EstadoActividadE.ABIERTA; MessageBox.Show("Actividad gestionada correctamente.\n La actividad voluntaria pasa a formar parte de las actividades PREINICIO"); } else { act.EstadoAct = EstadoActividadE.ACEPTADA_GESTOR; MessageBox.Show("Actividad gestionada correctamente.\n La actividad pasará a ser revisada por el profesor responsable."); } this.Close(); } catch (Exception ex) { labelError.Text = ex.Message; } }