void itemMenuFiltre_Click(object sender, EventArgs e) { CMenuItemFiltre menuFiltre = sender as CMenuItemFiltre; if (menuFiltre != null) { CFiltreDynamiqueInDb filtreInDb = menuFiltre.Filtre; CFiltreDynamique filtre = filtreInDb.Filtre; if (m_lastFiltreDynamique != null) { foreach (IVariableDynamique variable in m_lastFiltreDynamique.ListeVariables) { object val = m_lastFiltreDynamique.GetValeurChamp(variable.IdVariable); IVariableDynamique var2 = filtre.GetVariable(variable.IdVariable); if (var2 != null && var2.Nom == variable.Nom) { filtre.SetValeurChamp(var2, val); } } } m_lastFiltreDynamique = filtre; if (filtre.FormulaireEdition.Childs.Count() > 0) { if (!CFormFormulairePopup.EditeElement( filtre.FormulaireEdition, filtre, "Filter|20175")) { return; } } ApplyFiltre(filtre); } }
/// ////////////////////////////////////////////////////////// private void m_lnkAjoutParFiltre_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e) { m_menuPopup.MenuItems.Clear(); CListeObjetsDonnees liste = new CListeObjetsDonnees(CSc2iWin32DataClient.ContexteCourant, typeof(CFiltreDynamiqueInDb)); liste.Filtre = new CFiltreData(CFiltreDynamiqueInDb.c_champTypeElements + "=@1", m_typElements.ToString()); foreach (CFiltreDynamiqueInDb filtre in liste) { MenuItem item = new CMenuItemFiltre(filtre); item.Click += new EventHandler(ItemFiltreClick); m_menuPopup.MenuItems.Add(item); } m_menuPopup.Show(m_lnkAjoutParFiltre, new Point(0, m_lnkAjoutParFiltre.Height)); }
private void m_menuFiltres_Opening(object sender, CancelEventArgs e) { if (sender == m_menuFiltres) { foreach (IDisposable obj in new ArrayList(m_menuFiltres.Items)) { obj.Dispose(); } CListeObjetDonneeGenerique <CFiltreDynamiqueInDb> lst = new CListeObjetDonneeGenerique <CFiltreDynamiqueInDb>(m_contexteDonnee); lst.Filtre = new CFiltreData(CFiltreDynamiqueInDb.c_champTypeElements + "=@1", typeof(CProjet).ToString()); foreach (CFiltreDynamiqueInDb filtre in lst) { CMenuItemFiltre itemMenuFiltre = new CMenuItemFiltre(filtre); itemMenuFiltre.Click += new EventHandler(itemMenuFiltre_Click); m_menuFiltres.Items.Add(itemMenuFiltre); } } }