public CResultAErreur Serialize(C2iSerializer serializer) { int nVersion = GetNumVersion(); CResultAErreur result = serializer.TraiteVersion(ref nVersion); if (!result) { return(result); } string strName = Name; serializer.TraiteString(ref strName); Name = strName; int nSens = (int)m_direction; serializer.TraiteInt(ref nSens); m_direction = (DirectionSerialisation)nSens; serializer.TraiteType(ref m_type); //Fils ArrayList lst = new ArrayList(m_fils); serializer.TraiteArrayListOf2iSerializable(lst); ReconstruireFils(lst); //Parent if (m_direction != DirectionSerialisation.VersEnfants) { I2iSerializable father = (I2iSerializable)Parent; serializer.SerializeObjet(ref father); Parent = (CtrlPartiel)father; } ////Control //List<string> lstlignes = Serialise; //ArrayList lignes = new ArrayList(); //foreach (string l in lstlignes) // lignes.Add(l); //IList lst = new ArrayList(lignes); //serializer.TraiteArrayListOf2iSerializable(ref lst); //lignes = new ArrayList(lst); return(result); }
private void Initialiser(Control c, DirectionSerialisation sens) { m_filsserial = new ArrayList(); m_fils = new List <CtrlPartiel>(); Name = c.Name; m_direction = sens; Type t = null; if (c is CtrlPartiel) { t = ((CtrlPartiel)c).Type; } else { t = c.GetType(); } m_type = t; //Création des enfants if (sens == DirectionSerialisation.Origine || sens == DirectionSerialisation.VersEnfants) { m_fils = new List <CtrlPartiel>(); foreach (Control cfils in c.Controls) { //if (cfils.GetType() != typeof(MdiClient)) //{ CtrlPartiel f = new CtrlPartiel(cfils, DirectionSerialisation.VersEnfants); f.Parent = this; m_fils.Add(f); //} } } //Création des parents if (sens == DirectionSerialisation.Origine || sens == DirectionSerialisation.VersParents) { if (c.Parent != null) // && c.Parent.GetType() != typeof(MdiClient)) { Parent = new CtrlPartiel(c.Parent, DirectionSerialisation.VersParents); } } }
public CtrlPartiel(Control c, DirectionSerialisation sens) { Initialiser(c, sens); }