Exemple #1
0
        /// <summary>
        /// Méthode servant à supprimer un volontaire dans la BD
        /// </summary>
        private void miSupprimer_Click(object sender, RoutedEventArgs e)
        {
            // Le sender est le menu item
            MenuItem mi = sender as MenuItem;

            // On va chercher le parent du menu item (c'est donc le ContextMenu)
            ContextMenu cm = mi.Parent as ContextMenu;

            // Avec le ContextMenu, on peut aller chercher la datagrid
            DataGrid dg = cm.PlacementTarget as DataGrid;

            // On va chercher le volontaire
            Volontaire v = dg.SelectedItem as Volontaire;

            MessageBoxResult mbr = MessageBox.Show("Êtes-vous certain de vouloir supprimer le volontaire? Ceci entraînera des changements irréversibles dans la base de données.",
                                                   "Supprimer",
                                                   MessageBoxButton.YesNo,
                                                   MessageBoxImage.Question,
                                                   MessageBoxResult.No);

            if (mbr == MessageBoxResult.Yes)
            {
                ((Tournoi)DataContext).LstVolontaires.Remove(v);

                // Supprimer le volontaire
                LstVolontaires.Remove(v);

                // Supprimer dans la BD
                v.Delete();
            }
        }
Exemple #2
0
        /// <summary>
        /// Constructeur pour modifier un volontaire
        /// </summary>
        /// <param name="v">Volontaire à modifier</param>
        /// <param name="volontaires">Liste des autres volontaires</param>
        public AjouterVolontaire(Volontaire v, List <Volontaire> volontaires)
        {
            // Liste des volontaires (pour tester les champs uniques)
            this.volontaires = volontaires;

            InitializeComponent();

            txtMatricule.IsReadOnly = true; // On ne peut pas modifier le matricule

            // Cacher le champ de mot de passe
            lblMotDePasse.Visibility = Visibility.Hidden;
            txtMotDePasse.Visibility = Visibility.Hidden;

            // Monter le champ email + le bouton
            lblEmail.Margin       = new Thickness(22.5, 275, 0, 0);
            txtEmail.Margin       = new Thickness(150, 275, 0, 0);
            btnEnregistrer.Margin = new Thickness(0, 325, 0, 0);

            // Changer la hauteur de la fenêtre
            win.Height = 400;

            lblTitre.Content = "Modifier un volontaire";

            VolontaireTemp            = new Volontaire(v.Nom, v.Prenom, v.Matricule, v.Courriel, v.NomUtilisateur);
            VolontaireTemp.MotDePasse = "test"; // il faut mettre du texte dans le champs motdepasse ou cela nous retourne l'erreur disant que le champ est vide

            DataContext = VolontaireTemp;
        }
Exemple #3
0
        /// <summary>
        /// Constructeur pour créer un volontaire
        /// </summary>
        /// <param name="volontaires">Liste des autres volontaires</param>
        public AjouterVolontaire(List <Volontaire> volontaires)
        {
            // Liste des volontaires (pour tester les champs uniques)
            this.volontaires = volontaires;

            InitializeComponent();

            // Modifier le titre
            lblTitre.Content = "Nouveau volontaire";

            VolontaireTemp = new Volontaire(null, null, null, null, null);

            DataContext = VolontaireTemp;
        }
Exemple #4
0
        /// <summary>
        /// Méthode servant à ouvrir la fenêtre de modification d'un volontaire
        /// </summary>
        private void miModifier_Click(object sender, RoutedEventArgs e)
        {
            // Le sender est le menu item
            MenuItem mi = sender as MenuItem;

            // On va chercher le parent du menu item (c'est donc le ContextMenu)
            ContextMenu cm = mi.Parent as ContextMenu;

            // Avec le ContextMenu, on peut aller chercher la datagrid
            DataGrid dg = cm.PlacementTarget as DataGrid;

            // On va chercher le volontaire
            Volontaire v = dg.SelectedItem as Volontaire;

            // Le deuxième paramètre sert à passer une liste de volontaire (sauf le volontaire concerné) pour tester l'unicité des champs
            AjouterVolontaire av = new AjouterVolontaire(v, LstVolontaires.Where(x => x != v).ToList());

            av.ShowDialog();

            // Si on décide de l'enregistrer...
            if (av.LeVolontaire != null)
            {
                // Trouver l'index de v
                int index = LstVolontaires.IndexOf(v);

                if (index != -1)
                {
                    // Modifier le volontaire à cet index
                    LstVolontaires[index] = av.LeVolontaire;
                }

                index = (DataContext as Tournoi).LstVolontaires.IndexOf(v);

                if (index != -1)
                {
                    (DataContext as Tournoi).LstVolontaires[index] = av.LeVolontaire;
                }

                // Modifier le volontaire dans la BD
                av.LeVolontaire.Update();
            }
        }