private void FillListeChamps() { m_panelFormules.SuspendDrawing(); foreach (Control ctrl in m_panelFormules.Controls) { if (ctrl is CEditeurFormuleNommee) { ctrl.Visible = false; m_reserveEditeurs.Add(ctrl); } } ArrayList lst = new ArrayList(); if (m_cmbAction.SelectedValue is string) { string strCode = (string)m_cmbAction.SelectedValue; CInfoActionServeur info = null; foreach (CInfoActionServeur infoTmp in CActionLancerActionServeur.GetListeActionsPossibles(ActionLancer.Process.IdSession)) { if (infoTmp.Code == strCode) { info = infoTmp; break; } } if (info != null) { foreach (string strNomParametre in info.NomsParametres) { CFormuleForParametre formule = new CFormuleForParametre(strNomParametre, strNomParametre); formule.Formule = ActionLancer.GetFormuleForParametre(strNomParametre); lst.Add(formule); } } } lst.Sort(); m_listeExpressions = lst; int nY = 0; foreach (CFormuleForParametre formule in lst) { CEditeurFormuleNommee editeur = null; if (m_reserveEditeurs.Count > 0) { editeur = (CEditeurFormuleNommee)m_reserveEditeurs[0]; m_reserveEditeurs.Remove(editeur); } else { editeur = new CEditeurFormuleNommee(); editeur.Parent = m_panelFormules; } editeur.Visible = true; editeur.Width = m_panelFormules.ClientRectangle.Width; editeur.Location = new Point(0, nY); formule.Editeur = editeur; editeur.TextFormule.Enter += new EventHandler(OnEnterZoneFormule); editeur.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge); editeur.Libelle = formule.NomConvivial; editeur.TabIndex = nY; nY += editeur.Size.Height + 1; editeur.Formule = formule.Formule; } m_panelFormules.ResumeDrawing(); }
private void FillListeChamps() { m_panelFormules.SuspendDrawing(); foreach (Control ctrl in m_panelFormules.Controls) { if (ctrl is CEditeurFormuleNommee) { ctrl.Visible = false; m_reserveEditeurs.Add(ctrl); } } ArrayList lst = new ArrayList(); if (m_cmbTypeEntite.SelectedValue is Type && m_cmbTypeEntite.SelectedValue != typeof(DBNull)) { Type tp = (Type)m_cmbTypeEntite.SelectedValue; foreach (PropertyInfo info in tp.GetProperties()) { if (info.GetSetMethod() != null) { object[] attrs = info.GetCustomAttributes(typeof(DynamicFieldAttribute), true); if (attrs.Length > 0) { DynamicFieldAttribute attr = (DynamicFieldAttribute)attrs[0]; CFormuleForPropriete formule = new CFormuleForPropriete(info.Name, attr.NomConvivial); formule.Formule = ActionCreerEntite.GetFormuleForPropriete(info.Name); lst.Add(formule); } } } } lst.Sort(); m_listeExpressions = lst; int nY = 0; foreach (CFormuleForPropriete formule in lst) { CEditeurFormuleNommee editeur = null; if (m_reserveEditeurs.Count > 0) { editeur = (CEditeurFormuleNommee)m_reserveEditeurs[0]; m_reserveEditeurs.Remove(editeur); } else { editeur = new CEditeurFormuleNommee(); editeur.Parent = m_panelFormules; } editeur.Visible = true; editeur.Width = m_panelFormules.ClientRectangle.Width; editeur.Location = new Point(0, nY); formule.Editeur = editeur; editeur.TextFormule.Enter += new EventHandler(OnEnterZoneFormule); editeur.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge); editeur.Libelle = formule.NomConvivial; editeur.TabIndex = nY; nY += editeur.Size.Height + 1; editeur.Formule = formule.Formule; } m_panelFormules.ResumeDrawing(); }