Beispiel #1
0
        /// <summary>
        /// Asigna el objeto principal al origen de datos
        /// <returns>void</returns>
        /// </summary>
        protected override void RefreshMainData()
        {
            Datos.DataSource = _entity.Alumnos;
            PgMng.Grow();

            if (_promociones.Count > 0)
            {
                foreach (PromocionInfo item in _promociones)
                {
                    SetAlumnosValues(null, item);
                }
            }
            Arbol_TV.ExpandAll();

            PgMng.FillUp();
        }
Beispiel #2
0
        protected void SetNota(TreeNode node)
        {
            if (node.Level == 0)
            {
                return;
            }

            int        index  = _entity.Alumnos.IndexOf((Alumno_Examen)node.Tag);
            AlumnoInfo alumno = _alumnos.GetItem(((Alumno_Examen)node.Tag).OidAlumno);

            if (_entity.Desarrollo)
            {
                if (_entity.Alumnos[index].Respuestas.Count == 0)
                {
                    foreach (PreguntaExamen item in _entity.PreguntaExamens)
                    {
                        Respuesta_Alumno_Examen resp = Respuesta_Alumno_Examen.NewChild(_entity.Alumnos[index]);
                        resp.Orden             = item.Orden;
                        resp.OidPreguntaExamen = item.Oid;
                        _entity.Alumnos[index].Respuestas.Add(resp);
                    }
                }

                NotaDesarrolloAlumnoInputForm form = new NotaDesarrolloAlumnoInputForm(true, _entity, index, alumno);
                form.ShowDialog();
            }
            else
            {
                NotaAlumnoInputForm form = new NotaAlumnoInputForm(true, _entity, index, alumno);
                form.ShowDialog();
            }

            for (int i = Arbol_TV.Nodes.Count - 1; i >= 0; i--)
            {
                Arbol_TV.Nodes[i].Remove();
            }

            if (_promociones.Count > 0)
            {
                foreach (PromocionInfo item in _promociones)
                {
                    SetAlumnosValues(null, item);
                }
            }

            Arbol_TV.ExpandAll();
        }
        /// <summary>
        /// Función recursiva que va creando el árbol de preguntas por submódulo
        /// </summary>
        /// <param name="padre"></param>
        /// <param name="apartado"></param>
        private void SetSubmodulosValues(TreeNode padre, ModuloInfo modulo, SubmoduloList submodulos, TemaList temas)
        {
            TreeNode nodo = new TreeNode(modulo.NumeroModulo + " - " + modulo.Texto);

            nodo.NodeFont         = new Font("Tahoma", (float)8.25, FontStyle.Regular);
            nodo.ForeColor        = System.Drawing.Color.Black;
            nodo.Tag              = EntityInfo;
            nodo.SelectedImageKey = "modulo";

            if (padre == null)
            {
                while (Arbol_TV.Nodes.Count != 0)
                {
                    foreach (TreeNode t in Arbol_TV.Nodes)
                    {
                        Arbol_TV.Nodes.Remove(t);
                    }
                }

                Arbol_TV.Nodes.Add(nodo);
            }
            else
            {
                padre.Nodes.Add(nodo);
            }

            //foreach (SubmoduloInfo item in submodulos)
            //{
            foreach (TemaInfo tema in temas)
            {
                //if (p.OidSubmodulo == item.Oid)
                //{
                TreeNode pregunta         = null;
                Preguntas_PlantillaInfo p = null;

                foreach (Preguntas_PlantillaInfo obj in EntityInfo.Preguntas)
                {
                    if (obj.OidTema == tema.Oid)
                    {
                        p = obj;
                        break;
                    }
                }

                if (p != null)
                {
                    pregunta           = new TreeNode(tema.Codigo + " - " + tema.Nombre + " - Nivel : " + tema.Nivel.ToString() + " | Nº Preguntas : " + p.NPreguntas.ToString());
                    pregunta.NodeFont  = new Font("Tahoma", (float)8.25, FontStyle.Regular);
                    pregunta.ForeColor = System.Drawing.Color.Black;
                    pregunta.Tag       = p;
                    if (p.NPreguntas == 0)
                    {
                        pregunta.ImageKey = "submodulo_verde";
                    }
                    else
                    {
                        pregunta.ImageKey = "submodulo";
                    }

                    nodo.Nodes.Add(pregunta);
                }
                //}
            }
            //}

            Arbol_TV.ExpandAll();
        }