Bonjour,

J'ai créer une application avec des boutons dynamique qui me permettent de supprimer et ajouter des absences à la volé.

Hors lorsque je supprime une demande via le bouton supprimer.

Mon bouton valider/refuser ne détecter pas le changement et créer des exceptions...

voici le bout de code que j'ai créer.

Ma fonction de suppression est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
        private ICommand _MatinSupprimeCommand = null;
        public ICommand MatinSupprimeCommand
        {
            get
            {
                if (_MatinSupprimeCommand == null)
                    _MatinSupprimeCommand = new Framework.Windows.DelegateCommand(
                        () => {
                            TypeCongesMatin = TypeCongesDefaut; //appelle le setteur
                        },
                        () => 
                        {
                            if (Matin != null)
                                //( && Matin.DatePresence < DateTime.Now) || MainContainerViewModel.Courant.Utilisateur.Est(DroitAcces.Administratif))
                            {
                                return true;
                            }
 
                            return false;
                        }
                    );
 
                return _MatinSupprimeCommand;
            }
        }
Elle change le type d'absence et passe par le setter qui défini la valeur null dans la variable Matin
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
        public TypeConges TypeCongesMatin
        {
            get {
 
                return _TypeCongesMatin; 
            }
            set {
               _TypeCongesMatin = value;
                if (_TypeCongesMatin.Libcourt.In("P", "WE", "FE"))
                {
 
                    if (Matin != null)
                    {
                        DataAccess.EntitiesContext.Context.DeleteObject(Matin);
                        Matin = null;
                    }
                }
              }

Ma fonction de refus avec la partie exécute et canexecute qui est censer détecter que matin est null (ce qui n'est pas le cas)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
     private ICommand _MatinRefuseCommand = null;
        public ICommand MatinRefuseCommand
        {
            get
            {
                if (_MatinRefuseCommand == null)
                    _MatinRefuseCommand = new Framework.Windows.DelegateCommand(
                        () =>
                        {
                            if ( Matin != null)
                            {
                                Matin.Status = Presence.StatusDemandeConges.Refuser;
                                RaisePropertyChanged("MatinCouleur");
                                RaisePropertyChanged("MatinCouleurForeGround");
                            }
                        },   // Premier parametre qui est la partie Execute
                              // Deuxieme parametre can execute
                        () =>
                        {
                            if (Matin != null && Matin.Status != Presence.StatusDemandeConges.Refuser) // ici il passe meme lors de l'utilisation de la commande supprimé qui passe dans le setter
                            {                                                                                                               // qui est censer passer ma valeur a null
                                return Matin.EstValidant(MainContainerViewModel.Courant.Utilisateur);
                            }
 
                            return false;
                        }
                    );
 
                return _MatinRefuseCommand;
            }
        }