/// <summary> /// Asigna los datos de origen para controles que dependen de otros /// </summary> /// <param name="controlName"></param> protected override void SetDependentControlSource(string controlName) { switch (controlName) { case "Modulo_CB": { if (Modulo_CB.SelectedItem != null && ((ComboBoxSource)Modulo_CB.SelectedItem).Oid != 0) { Datos_Temas.DataSource = _combo_modulos.GetFilteredChilds(((ComboBoxSource)Modulo_CB.SelectedItem).Oid); Tema_CB.SelectedItem = _combo_modulos.Childs.Buscar(_pregunta.OidTema); } } break; case "Tema_CB": { if (_pregunta != null) { TemaInfo tema = _temas.GetItem(_pregunta.OidTema); if (tema.Desarrollo) { Tipo_CB.SelectedIndex = 1; } else { Tipo_CB.SelectedIndex = 2; } Nivel_TB.Text = tema.Nivel.ToString(); } } break; } }
/// <summary> /// Asigna los datos de origen para controles que dependen de otros /// </summary> /// <param name="controlName"></param> protected override void SetDependentControlSource(string controlName) { switch (controlName) { case "Modulo_CB": { if (Modulo_CB.SelectedItem != null && ((ComboBoxSource)Modulo_CB.SelectedItem).Oid != 0) { Datos_Submodulos.DataSource = _combo_modulos.GetFilteredChilds(((ComboBoxSource)Modulo_CB.SelectedItem).Oid); Submodulo_CB.SelectedItem = _combo_modulos.Childs.Buscar(_pregunta_info.OidSubmodulo); } } break; case "Submodulo_CB": { if (!_cambiado) { if (Submodulo_CB.SelectedItem != null && ((ComboBoxSource)Submodulo_CB.SelectedItem).Oid != 0) { Datos_Temas.DataSource = _combo_modulos.Childs.GetFilteredChilds(((ComboBoxSource)Submodulo_CB.SelectedItem).Oid); Tema_CB.SelectedItem = _combo_modulos.Childs.Childs.Buscar(_pregunta_info.OidTema); } } else { if (Submodulo_CB.SelectedValue != null && (long)Submodulo_CB.SelectedValue != 0) { Datos_Temas.DataSource = _combo_modulos.Childs.GetFilteredChilds((long)Submodulo_CB.SelectedValue); Tema_CB.SelectedItem = _combo_modulos.Childs.Childs.Buscar(_pregunta_info.OidTema); } } } break; case "Tema_CB": { if (_pregunta_info != null) { TemaInfo tema = _temas.GetItem(_pregunta_info.OidTema); if (tema.Desarrollo) { Tipo_CB.SelectedItem = ETipoPregunta.Desarrollo.ToString(); //_combo_tipo.Buscar(1); } else { Tipo_CB.SelectedItem = ETipoPregunta.Test.ToString(); //_combo_tipo.Buscar(2); } Nivel_TB.Text = tema.Nivel.ToString(); } } break; } }
private void PreguntasAddForm_Activated(object sender, EventArgs e) { if (_temas != null && Tema_CB.SelectedItem != null) { TemaInfo tema = _temas.GetItem(((ComboBoxSource)Tema_CB.SelectedItem).Oid); if (tema != null && _entity != null) { if (tema.Desarrollo) { Respuestas_Grid.Visible = false; Respuestas_Grid.Enabled = false; Respuestas_BT.Visible = false; Respuestas_BT.Enabled = false; ModeloRespuesta_TB.Visible = true; ModeloRespuesta_TB.Enabled = true; ModeloRespuesta_LB.Visible = true; ModeloRespuesta_LB.Enabled = true; ModeloRespuesta_BT.Visible = true; ModeloRespuesta_BT.Enabled = true; ModeloRespuestaView_BT.Visible = true; ModeloRespuestaView_BT.Enabled = true; return; } } } ModeloRespuesta_TB.Visible = false; ModeloRespuesta_TB.Enabled = false; ModeloRespuesta_LB.Visible = false; ModeloRespuesta_LB.Enabled = false; ModeloRespuesta_BT.Visible = false; ModeloRespuesta_BT.Enabled = false; ModeloRespuestaView_BT.Visible = false; ModeloRespuestaView_BT.Enabled = false; Respuestas_Grid.Visible = true; Respuestas_Grid.Enabled = true; Respuestas_BT.Visible = true; Respuestas_BT.Enabled = true; }
/// <summary> /// Función recursiva que va creando el árbol de submódulos y preguntas /// </summary> /// <param name="padre"></param> /// <param name="apartado"></param> private void SetPreguntasValues(TreeNode padre, TemaInfo tema) { TreeNode nodo = new TreeNode(tema.Codigo + " - " + tema.Nombre + " - Nivel: " + tema.Nivel.ToString()); nodo.NodeFont = new Font("Tahoma", (float)8.25, FontStyle.Regular); nodo.ForeColor = System.Drawing.Color.Black; nodo.Tag = tema; nodo.SelectedImageKey = Properties.Settings.Default.SUBMODULO_ICON; if (padre == null) { Arbol_TV.Nodes.Add(nodo); } else { padre.Nodes.Add(nodo); } string idioma = string.Empty; if (Idioma_CB.SelectedItem != null && ((ComboBoxSource)Idioma_CB.SelectedItem).Oid == 0) { if (((ComboBoxSource)Idioma_CB.SelectedItem).Oid == 1) { idioma = Library.Common.EIdioma.Spanish.ToString(); } else { idioma = Library.Common.EIdioma.English.ToString(); } } foreach (PreguntaInfo p in _preguntas) { Library.Instruction.EnumText <ETipoPregunta> .GetLabel(ETipoPregunta.Desarrollo); if (p.OidTema == tema.Oid && (Tema_CB.SelectedItem == null || ((((ComboBoxSource)Tema_CB.SelectedItem).Oid == 0 || ((ComboBoxSource)Tema_CB.SelectedItem).Oid == p.OidTema) && (((ComboBoxSource)Idioma_CB.SelectedItem).Oid == 0 || Idioma_CB.SelectedItem == null || p.Idioma == idioma))) && ((_entity.Desarrollo && p.Tipo == ETipoPregunta.Desarrollo.ToString()) || (!_entity.Desarrollo && p.Tipo == ETipoPregunta.Test.ToString() /*"Test"*/)) && p.Activa) { //Pregunta p_actualizada = _preguntas.GetItem(p.Oid); TreeNode nodo_p = new TreeNode("[" + p.Serial + "] " + p.Texto); nodo_p.NodeFont = new Font("Tahoma", (float)8.25, FontStyle.Regular); nodo_p.ForeColor = System.Drawing.Color.Black; nodo_p.Tag = p; if (Esta(p.Oid)) { nodo_p.ImageKey = Properties.Settings.Default.PREGUNTA_DISPONIBLE_ICON; nodo_p.Checked = true; _examen++; _seleccionadas++; } else { if (p.FechaDisponibilidad.Date <= _entity.FechaExamen.Date && !p.Reservada) { nodo_p.ImageKey = Properties.Settings.Default.PREGUNTA_DISPONIBLE_ICON; _disponibles++; } else { if (p.Reservada) { if (preguntas_incluidas.Contains(p.Oid) || _preguntas_mismo_dia.Contains(p.Oid)) { nodo_p.ImageKey = Properties.Settings.Default.PREGUNTA_DISPONIBLE_ICON; _disponibles++; } else { nodo_p.ImageKey = Properties.Settings.Default.PREGUNTA_RESERVADA_ICON; } } else { if (preguntas_incluidas.Contains(p.Oid)) { nodo_p.ImageKey = Properties.Settings.Default.PREGUNTA_DISPONIBLE_ICON; _disponibles++; } else { nodo_p.ImageKey = Properties.Settings.Default.PREGUNTA_BLOQUEADA_ICON; } } } } nodo.Nodes.Add(nodo_p); } } }
private void Filtrar_BT_Click(object sender, EventArgs e) { _examen = 0; _disponibles = 0; _seleccionadas = 0; GetPreguntasReservadas(); while (Arbol_TV.Nodes.Count != 0) { foreach (TreeNode t in Arbol_TV.Nodes) { Arbol_TV.Nodes.Remove(t); } } if ((ComboBoxSource)Submodulo_CB.SelectedItem != null && (ComboBoxSource)Idioma_CB.SelectedItem != null) { if (((ComboBoxSource)Submodulo_CB.SelectedItem).Oid == 0) { foreach (SubmoduloInfo sub in _submodulos) { foreach (TemaInfo item in _temas) { if (item.OidSubmodulo == sub.Oid) { SetPreguntasValues(null, item); } } } //Arbol_TV.ExpandAll(); //se eliminan los nodos que no tengan preguntas asociadas foreach (TreeNode t in Arbol_TV.Nodes) { if (t.Nodes.Count == 0) { t.Remove(); } } } else { SubmoduloInfo submodulo = _submodulos.GetItem(((ComboBoxSource)Submodulo_CB.SelectedItem).Oid); if (Tema_CB.SelectedItem != null && ((ComboBoxSource)Tema_CB.SelectedItem).Oid == 0) { foreach (TemaInfo t in _temas) { if (t.OidSubmodulo == submodulo.Oid) { SetPreguntasValues(null, t); } } } else { TemaInfo t = _temas.GetItem(((ComboBoxSource)Tema_CB.SelectedItem).Oid); SetPreguntasValues(null, t); } //se eliminan los nodos que no tengan preguntas asociadas foreach (TreeNode t in Arbol_TV.Nodes) { if (t.Nodes.Count == 0) { t.Remove(); } } } } //else //{ // TemaInfo t = _temas.GetItem(((ComboBoxSource)Tema_CB.SelectedItem).Oid); // if (t != null) // { // SetPreguntasValues(null, t); // //se eliminan los nodos que no tengan pregutas asociadas // foreach (TreeNode n in Arbol_TV.Nodes) // { // if (n.Nodes.Count == 0) // n.Remove(); // } // } // else // MessageBox.Show("No existen preguntas asociadas al tema seleccionado"); //} Disponibles_TB.Text = _disponibles.ToString(); Seleccionadas_TB.Text = "0"; Examen_TB.Text = _examen.ToString(); }
private void Select_Button_Click(object sender, EventArgs e) { _plantilla = PlantillaExamenInfo.Get(ActiveOID); if (_plantilla != null) { _guardado = true; if (!_plantilla.Desarrollo) { TemaList temas = TemaList.GetModuloList(_modulo.Oid, false); foreach (Preguntas_PlantillaInfo item in _plantilla.Preguntas) { long count = item.NPreguntas; PreguntaList preguntas_tema = PreguntaList.GetPreguntasDisponiblesTema(item.OidTema, _entity.Desarrollo, _entity.FechaExamen, count); if (preguntas_tema != null) { foreach (PreguntaInfo info in preguntas_tema) { if (count == 0) { break; } Pregunta_Examen pregunta = Pregunta_Examen.NewChild(_entity); pregunta.OidPregunta = info.Oid; _entity.Pregunta_Examens.AddItem(pregunta); count--; } } if (count != 0) { TemaInfo tema = temas.GetItem(item.OidTema); MessageBox.Show("No hay suficientes preguntas disponibles para el tema " + tema.Codigo); } } } else { long count = _plantilla.NPreguntas; PreguntaList preguntas = PreguntaList.GetPreguntasDisponiblesModulo(_entity.OidModulo, _entity.Desarrollo, _entity.FechaExamen, count); if (preguntas != null) { foreach (PreguntaInfo info in preguntas) { if (count == 0) { break; } Pregunta_Examen pregunta = Pregunta_Examen.NewChild(_entity); pregunta.OidPregunta = info.Oid; _entity.Pregunta_Examens.AddItem(pregunta); count--; } } if (count != 0) { MessageBox.Show("No hay suficientes preguntas disponibles en el submódulo"); } } } Cerrar(); Close(); }
/// <summary> /// Asigna los datos de origen para controles que dependen de otros /// </summary> /// <param name="controlName"></param> protected override void SetDependentControlSource(string controlName) { switch (controlName) { case "Modulo_CB": { if (Datos_Modulos.Current != null && Modulo_CB.SelectedItem != null) { Datos_Submodulos.DataSource = _combo_modulos.GetFilteredChilds(((ComboBoxSource)Modulo_CB.SelectedItem).Oid); } } break; case "Submodulo_CB": { if (Submodulo_CB.SelectedItem != null && ((ComboBoxSource)Submodulo_CB.SelectedItem).Oid != 0) { Datos_Temas.DataSource = _combo_modulos.Childs.GetFilteredChilds(((ComboBoxSource)Submodulo_CB.SelectedItem).Oid); } } break; case "Tema_CB": { if (_temas != null && Tema_CB.SelectedItem != null) { TemaInfo tema = _temas.GetItem(((ComboBoxSource)Tema_CB.SelectedItem).Oid); if (tema != null && _entity != null) { _entity.OidSubmodulo = tema.OidSubmodulo; _entity.OidTema = tema.Oid; Nivel_TB.Text = tema.Nivel.ToString(); _entity.Nivel = tema.Nivel; if (tema.Desarrollo) { Tipo_TB.Text = ETipoPregunta.Desarrollo.ToString(); _entity.Tipo = ETipoPregunta.Desarrollo.ToString(); Respuestas_Grid.Visible = false; Respuestas_Grid.Enabled = false; Respuestas_BT.Visible = false; Respuestas_BT.Enabled = false; ModeloRespuesta_TB.Visible = true; ModeloRespuesta_TB.Enabled = true; ModeloRespuesta_LB.Visible = true; ModeloRespuesta_LB.Enabled = true; ModeloRespuesta_BT.Visible = true; ModeloRespuesta_BT.Enabled = true; ModeloRespuestaView_BT.Visible = true; ModeloRespuestaView_BT.Enabled = true; } else { Tipo_TB.Text = ETipoPregunta.Test.ToString(); _entity.Tipo = ETipoPregunta.Test.ToString(); ModeloRespuesta_TB.Visible = false; ModeloRespuesta_TB.Enabled = false; ModeloRespuesta_LB.Visible = false; ModeloRespuesta_LB.Enabled = false; ModeloRespuestaView_BT.Visible = false; ModeloRespuestaView_BT.Enabled = false; ModeloRespuesta_BT.Visible = false; ModeloRespuesta_BT.Enabled = false; Respuestas_Grid.Visible = true; Respuestas_Grid.Enabled = true; Respuestas_BT.Visible = true; Respuestas_BT.Enabled = true; } } } } break; } }