Bonjour à tous,

Je souhaiterais un avis et éventuellement être corrigé car j'ai bricolé quelque chose pour sauvegarder un changement à partir d'un databinding mais j'ai l'intuition qu'il doit y avoir la possibilité de faire quelque chose de plus "propre", ou disons conventionnel.

Voici donc l'extrait où la propriété Nom de ma vue-modèle doit enregistrer le nouveau nom dans le fichier XML :

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
33
34
35
36
37
38
39
40
public string Nom
        {
            get { return nom; }
            set
            {
                if(nom != null)
                {
 
                    XmlSerializer xs = new XmlSerializer(typeof(Dt_Classes.Classe));
                    using (StreamReader rd = new StreamReader(dossierGestion + '\\' + "4eD.xml"))
                    {
 
                        uneClasse = xs.Deserialize(rd) as Dt_Classes.Classe;
 
                        var lEleve = from eleve in uneClasse.LesEleves
                                     where eleve.NomEleve == nom
                                     select eleve;
 
                        int Index;
 
                        foreach(Dt_Classes.Eleve eleve in lEleve)
                        { 
                            Index = uneClasse.LesEleves.IndexOf(eleve);
                            uneClasse.LesEleves[Index].NomEleve = value;
                        }
                    }
 
                   XmlSerializer xs2 = new XmlSerializer(typeof(Dt_Classes.Classe));
                   using (StreamWriter wr = new StreamWriter(dossierGestion + "\\" + "4eD.xml"))
                   {
                       xs2.Serialize(wr, uneClasse);
                   }
 
 
                }
                nom = value;
                OnPropertyChanged("Nom");
 
            }
        }
Merci beaucoup pour vos retours.

En vous souhaitant une bonne journée,