public CDataGridForFormulaire() { InitializeComponent(); m_cache = new CGridDataCache(this); CWin32Traducteur.Translate(m_menuFiltre); m_valueSelector.OnOkClicked += new EventHandler(m_valueSelector_OnOkClicked); }
public void Init( CWndFor2iDataGrid wndFor2iDataGrid, C2iWndDataGrid wndGrid, object elementEdite, List <object> lstObjets, IFournisseurProprietesDynamiques fournisseur) { m_wndFor2iDataGrid = wndFor2iDataGrid; m_listeObjetsOriginale = lstObjets; m_fournisseur = fournisseur; m_wndGrid = wndGrid; m_elementEdite = elementEdite; if (m_cache != null) { m_cache.Dispose(); } m_cache = new CGridDataCache(this); List <object> listeObjets = new List <object>(lstObjets); foreach (object newElt in m_listeElementsAdd) { if (!lstObjets.Contains(newElt)) { lstObjets.Add(newElt); } } m_panelTop.Visible = m_wndGrid.HasAddButton || m_wndGrid.HasDeleteButton; m_lnkAdd.Visible = m_wndGrid.HasAddButton; m_lnkDelete.Visible = m_wndGrid.HasDeleteButton; m_grid.AutoGenerateColumns = false; Filtrer(); m_grid.SuspendDrawing(); //m_grid.DataSource = lstObjets; m_grid.Columns.Clear(); int nMaxHeight = m_grid.ColumnHeadersHeight; m_grid.EnableHeadersVisualStyles = false; m_grid.RowHeadersVisible = m_wndGrid.RowHeaderWidth != 0; m_grid.RowHeadersWidth = Math.Max(m_wndGrid.RowHeaderWidth, 10); m_grid.RowHeadersDefaultCellStyle.BackColor = m_wndGrid.RowHeaderColor; m_grid.BackgroundColor = m_wndGrid.BackColor; m_grid.DefaultCellStyle.SelectionBackColor = m_wndGrid.SelectedCellBackColor; m_grid.DefaultCellStyle.SelectionForeColor = m_wndGrid.SelectedCellForeColor; m_grid.EditMode = DataGridViewEditMode.EditOnEnter; if (m_wndGrid.DefaultRowHeight > 0) { m_grid.RowTemplate.Height = m_wndGrid.DefaultRowHeight; } int nCol = 0; foreach (I2iObjetGraphique obj in m_wndGrid.Childs) { C2iWndDataGridColumn col = obj as C2iWndDataGridColumn; CContexteEvaluationExpression ctxEval = new CContexteEvaluationExpression(m_elementEdite); //Evalue la formule de visibilité if (col.Visiblity != null) { CResultAErreur res = col.Visiblity.Eval(ctxEval); if (res && !CUtilBool.BoolFromObject(res.Data)) { col = null; } } if (col != null) { IWndIncluableDansDataGrid wndForGrid = col.Control as IWndIncluableDansDataGrid; m_cache.RegisterControle(nCol, wndForGrid); nCol++; if (wndForGrid != null) { DataGridViewColumn gridCol = new DataGridViewColumn( new CDataGridViewCustomCellFor2iWnd(m_cache, col, nCol - 1, wndForGrid, m_fournisseur) ); if (col.Enabled != null) { CResultAErreur result = col.Enabled.Eval(ctxEval); if (result && !CUtilBool.BoolFromObject(result.Data)) { gridCol.ReadOnly = true; } } gridCol.HeaderText = col.Text; gridCol.Width = col.ColumnWidth; DataGridViewCellStyle style = new DataGridViewCellStyle(); style.BackColor = col.BackColor; style.ForeColor = col.ForeColor; style.Font = col.Font; gridCol.HeaderCell.Style = style; if (col.Control != null) { DataGridViewCellStyle styleCell = new DataGridViewCellStyle(); styleCell.Font = col.Control.Font; styleCell.BackColor = col.Control.BackColor; styleCell.ForeColor = col.Control.ForeColor; styleCell.WrapMode = DataGridViewTriState.True; gridCol.CellTemplate.Style = styleCell; } m_grid.Columns.Add(gridCol); nMaxHeight = Math.Max(col.Size.Height, nMaxHeight); } } } m_grid.ResumeDrawing(); m_grid.ColumnHeadersHeight = nMaxHeight; InitRestrictions(m_listeRestrictions); }
public CGridSorter(int nColonne, bool bAsc, CGridDataCache datas) { m_nColonneSort = nColonne; m_datas = datas; m_bAsc = bAsc; }