private void SubElemX_PropertyChanged(object sender, PropertyChangedEventArgs e) { SubElementsX.ForEach(x => x.SuspendPropertyChange = true); SubElements.ForEach(x => x.Bool1 = ((SubElementX)sender).Bool1); //SubElements.ForEach(x => x.Bool1 = !x.Bool1); //SubElements.ForEach(x => x.NeutralBool = !x.NeutralBool); //SubElements.ForEach(x => x.Val2 = x.Val2 + "."); //SubElements.ForEach(x => x.Rad1 = true); //SubElements.ForEach(x => x.Rad2 = false); //SubElements.ForEach(x => x.Rad3 = false); SubElementsX.ForEach(x => x.SuspendPropertyChange = false); //SubElements.First().Val2 = "ooo"; //SubElements.First().OnPropertyChanged("SubElement"); //Permet de remonter le propertychanged //OnPropertyChanged("SubElementsX"); //OnPropertyChanged("SubElementsX"); //OnPropertyChanged("Element"); //OnPropertyChanged("SubElement"); //OnPropertyChanged("SubElementsX"); }
private void SubElem_PropertyChanged(object sender, PropertyChangedEventArgs e) { SubElements.ForEach(x => x.SuspendPropertyChange = true); SubElementsX.ForEach(x => x.Bool1 = ((SubElement)sender).Bool1); //SubElementsX.ForEach(x => x.Bool1 = !x.Bool1); //SubElementsX.ForEach(x => x.Val2 = x.Val2 + "."); //SubElementsX.ForEach(x => x.SuspendPropertyChange = false); //SubElementsX.First().SuspendPropertyChange = false; SubElements.ForEach(x => x.SuspendPropertyChange = false); OnPropertyChanged("SubElements"); }
public Element(bool a) { id = Randomizer.Nombre(); Val1 = Randomizer.Nombre(); Val2 = "Elem " + Randomizer.Chaine(2); Val3 = "Elem " + Randomizer.Chaine(2); if (SubElements == null) { SubElements = new List <SubElement>(); } if (SubElementsX == null) { SubElementsX = new List <SubElementX>(); } for (int i = 1; i < Randomizer.Nombre(4) + 2; i++) { SubElements.Add(new SubElement(true)); SubElements[i - 1].PropertyChanged += new PropertyChangedEventHandler(SubElem_PropertyChanged); SubElementsX.Add(new SubElementX(true)); SubElementsX[i - 1].PropertyChanged += new PropertyChangedEventHandler(SubElemX_PropertyChanged); } CACs = new List <SubElementY>(); CACs.Add(new SubElementY(1)); CACs.Add(new SubElementY(2)); CACs.Add(new SubElementY(3)); CACs = CACs; EtatsLecture = new List <SubElementZ>(); EtatsLecture.Add(new SubElementZ(1)); EtatsLecture.Add(new SubElementZ(2)); EtatsLecture.Add(new SubElementZ(3)); EtatsLecture = EtatsLecture; }