Example #1
0
        /// <summary>
        /// Méthode permettant d'éditer les propriétés d'un examen d'un module d'une UE
        /// </summary>
        /// <param name="sender">lbExamens</param>
        /// <param name="e">Un double click (event)</param>
        private void EditerNoteExamen(object sender, MouseButtonEventArgs e)
        {
            // on récupère l'UE sélectionnée
            UE ueSelected = lbUE.SelectedItem as UE;
            // on récupère le module sélectionné
            Module moduleSelected = lbModules.SelectedItem as Module;
            // on récupère l'examen sélectionnée
            Examen examenSelected = lbExamens.SelectedItem as Examen;

            // UE non nulle ?
            if (ueSelected != null)
            {
                // module non nul ?
                if (moduleSelected != null)
                {
                    // examen non nul ?
                    if (examenSelected != null)
                    {
                        // on crée une fenêtre à partir de la Note de l'examen
                        EditionWindowExamen fen = new EditionWindowExamen(examenSelected.Note);
                        // on pré-remplit le champ tbNote avec la note obtenue à l'examen
                        fen.tbNote.Text = examenSelected.Note.Valeur.ToString().Replace(",", ".");
                        // si l'étudiant était absent à l'examen
                        if (examenSelected.Note.Absent == true)
                        {
                            // on coche le radiobutton absent
                            fen.rbAbsent.IsChecked = true;
                        }
                        // si l'étudiant n'était pas absent à l'examen
                        if (examenSelected.Note.Absent == false)
                        {
                            // on coche le radiobutton présent
                            fen.rbPresent.IsChecked = true;
                        }
                        // si la fenêtre est fermée
                        if (fen.ShowDialog() == true)
                        {
                            // si le radiobutton absent était checké
                            if (fen.rbAbsent.IsChecked == true)
                            {
                                // on change la valeur de l'attribut absent, ce qui passe la note à 0
                                examenSelected.Note.Absent = true;
                            }
                            // si le radiobutton présent était checké
                            if (fen.rbPresent.IsChecked == true)
                            {
                                // on passe la valeur de l'attribut absent à faux
                                examenSelected.Note.Absent = false;
                            }
                            // on gère l'affichage : réactualisation
                            this.lbExamens.Items.Clear();
                            foreach (Examen ex in moduleSelected.ListerExamens())
                            {
                                this.lbExamens.Items.Add(ex);
                            }
                        }
                    }
                }
            }
        }
Example #2
0
        /// <summary>
        /// permet de créer un examen dans un module
        /// </summary>
        /// <param name="sender">Bouton ajout d'examen</param>
        /// <param name="e">Click</param>
        private void CreationExamenModule(object sender, RoutedEventArgs e)
        {
            // booléen permettant de récupérer la présence de l'étudiant (absent ou non)
            bool abs = false;
            // on récupère l'UE sélectionné
            UE ueSelected = lbUE.SelectedItem as UE;
            // on récupére le module sélectionné
            Module moduleSelected = lbModules.SelectedItem as Module;

            // si l'UE n'est pas nulle
            if (ueSelected != null)
            {
                // si le module n'est pas nul
                if (moduleSelected != null)
                {
                    // On crée une note pour le binding
                    Note n = new Note(0);
                    // on crée une nouvelle fenêtre à partir de la note
                    EditionWindowExamen fen = new EditionWindowExamen(n);
                    // si la fenêtre est fermée
                    if (fen.ShowDialog() == true)
                    {
                        // si le RadioButton rbAbsent était coché
                        if (fen.rbAbsent.IsChecked == true)
                        {
                            // l'étudiant est noté absent
                            abs = true;
                        }
                        // on crée un examen à partir de la valeur de la note récupérée via le binding
                        Examen ex = new Examen(n.Valeur);
                        // on attribue la valeur abs à l'attribut Absent de la note
                        ex.Note.Absent = abs;
                        // on ajoute l'examen à la liste des examens du module
                        moduleSelected.AjouterExamenModule(ex);
                        // on l'affiche
                        this.lbExamens.Items.Add(ex);
                    }
                }
            }
        }