public void Init(CLienDeProxy lienProxy)
        {
            if (lienProxy != null)
            {
                m_lienProxy = lienProxy;
                // Supprime tous les controles du panel
                ArrayList lstToRemove = new ArrayList(m_panelPlagesIP.Controls);
                foreach (Control ctrl in lstToRemove)
                {
                    if (ctrl is CControlEditionPlageIP)
                    {
                        ctrl.Visible = false;
                        ctrl.Parent  = null;
                        m_panelPlagesIP.Controls.Remove(ctrl);
                        ctrl.Dispose();
                    }
                }

                // Charge toutes les Plages IP
                foreach (CPlageIP plage in m_lienProxy.PlagesIP.ToArray())
                {
                    AjouterControlPlageIp(plage);
                }
            }

            return;
        }
Beispiel #2
0
        public override CResultAErreur TraitementAvantSauvegarde(CContexteDonnee contexte)
        {
            CResultAErreur result = base.TraitementAvantSauvegarde(contexte);

            if (!result)
            {
                return(result);
            }
            DataTable table = contexte.Tables[GetNomTable()];

            if (table == null)
            {
                return(result);
            }

            ArrayList lstRows = new ArrayList(table.Rows);

            foreach (DataRow row in lstRows)
            {
                CLienDeProxy lien = new CLienDeProxy(row);
                if (row.RowState == DataRowState.Modified || row.RowState == DataRowState.Added)
                {
                    lien.ProxySource.ForceChangementSyncSession();
                }
                else if (row.RowState == DataRowState.Deleted)
                {
                    DataRowVersion versionActuelle = lien.VersionToReturn;
                    lien.VersionToReturn = DataRowVersion.Original;
                    if (!lien.ProxySource.IsDeleted)
                    {
                        lien.ProxySource.ForceChangementSyncSession();
                    }
                    lien.VersionToReturn = versionActuelle;
                }
            }


            return(result);
        }