/// ------------------------------------------------------------------------------------ protected override void OnHandleDestroyed(EventArgs e) { if (!DesignMode) { Settings.Default[_gridColSettingPrefix + "ComponentGrid"] = GridSettings.Create(_grid); } base.OnHandleDestroyed(e); }
/// ------------------------------------------------------------------------------------ protected override void OnColumnWidthChanged(DataGridViewColumnEventArgs e) { base.OnColumnWidthChanged(e); if (_resizingColumnHeaders) { return; } BeginInvoke((Action)ResizeColumnHeaders); // If this control doesn't have focus or all three standard columns have not yet // been added, the resize is not the result of the user dragging the column divider. if (ContainsFocus && ColumnCount >= 3) { Settings.Default.SegmentGrid = GridSettings.Create(this); } }
/// ------------------------------------------------------------------------------------ public static GridSettings Create(DataGridView grid) { var gridSettings = new GridSettings(); var sortCol = grid.Columns.Cast<DataGridViewColumn>() .FirstOrDefault(c => c.HeaderCell.SortGlyphDirection != SortOrder.None); if (sortCol != null) { gridSettings.SortedColumn = sortCol.Name; gridSettings.SortDirection = sortCol.HeaderCell.SortGlyphDirection.ToString(); } gridSettings.ColumnHeaderHeight = grid.ColumnHeadersHeight; gridSettings.Columns = (from c in grid.Columns.Cast<DataGridViewColumn>() select new GridColumnSettings { Id = c.Name, Width = c.Width, FillWeight = c.FillWeight, Visible = c.Visible, DisplayIndex = c.DisplayIndex }).ToArray(); return gridSettings; }
/// ------------------------------------------------------------------------------------ public static GridSettings Create(DataGridView grid) { var gridSettings = new GridSettings(); var sortCol = grid.Columns.Cast <DataGridViewColumn>() .FirstOrDefault(c => c.HeaderCell.SortGlyphDirection != SortOrder.None); if (sortCol != null) { gridSettings.SortedColumn = sortCol.Name; gridSettings.SortDirection = sortCol.HeaderCell.SortGlyphDirection.ToString(); } gridSettings.ColumnHeaderHeight = grid.ColumnHeadersHeight; gridSettings.Columns = (from c in grid.Columns.Cast <DataGridViewColumn>() select new GridColumnSettings { Id = c.Name, Width = c.Width, FillWeight = c.FillWeight, Visible = c.Visible, DisplayIndex = c.DisplayIndex }).ToArray(); return(gridSettings); }