private void DataGridView_CellClick(object sender, DataGridViewCellEventArgs e) { MathCell mCell = MathCellsProvider.GetMathCell(dataGridView.CurrentCell); AddressBox.Text = mCell.OwnAddress; FormulaBox.Text = mCell.Formula; }
public void Shift() { foreach (DataGridViewRow row in _ownerGrid.dataGridView.Rows) { foreach (DataGridViewCell cell in row.Cells) { MathCell mCell = MathCellsProvider.GetMathCell(cell); _shiftWay.DoShift(_delimiterIndex, mCell, _ownerGrid); } } List <MathCell> usedMathCells = MathCellsProvider.GetInstance.GetUsedCells(); foreach (MathCell usedCell in usedMathCells) { usedCell.ShiftReferences(); } OnGridMathCellsProvider.UpdateValuesOnGrid(usedMathCells, _ownerGrid); }
public static void DeleteColumn(GridForm grid) { if (grid.dataGridView.ColumnCount <= 1) { return; } int colIndex = grid.dataGridView.CurrentCell.ColumnIndex; bool isDeletionAllowed = true; if (IsColumnHasValue(grid, colIndex)) { isDeletionAllowed = IsDeletionAllowed("column"); } if (isDeletionAllowed) { foreach (DataGridViewRow row in grid.dataGridView.Rows) { foreach (DataGridViewCell cell in row.Cells) { if (cell.ColumnIndex == colIndex) { MathCell delCell = MathCellsProvider.GetMathCell(cell); delCell.UpdateDependentsBeforeDelete(); MathCellsProvider.GetInstance.RemoveCell(delCell); } } } grid.dataGridView.Columns.RemoveAt(colIndex); MathCellsShifter mathCellsShifter = new MathCellsShifter(new ShiftAfterColumnDeletion(), colIndex, grid); mathCellsShifter.Shift(); HeadersUpdater headersUpdater = new HeadersUpdater(grid, new UpdateColumns()); headersUpdater.Update(); } }
public static void DeleteRow(GridForm grid) { if (grid.dataGridView.RowCount <= 1) { return; } int rowIndex = grid.dataGridView.CurrentCell.RowIndex; bool isDeletionAllowed = true; if (IsRowHasValue(grid, rowIndex)) { isDeletionAllowed = IsDeletionAllowed("row"); } if (isDeletionAllowed) { DataGridViewRow deletionRow = grid.dataGridView.Rows[rowIndex]; foreach (DataGridViewCell cell in deletionRow.Cells) { MathCell delCell = MathCellsProvider.GetMathCell(cell); delCell.UpdateDependentsBeforeDelete(); MathCellsProvider.GetInstance.RemoveCell(delCell); } grid.dataGridView.Rows.RemoveAt(rowIndex); MathCellsShifter mathCellsShifter = new MathCellsShifter(new ShiftAfterRowDeletion(), rowIndex, grid); mathCellsShifter.Shift(); HeadersUpdater headersUpdater = new HeadersUpdater(grid, new UpdateRows()); headersUpdater.Update(); } }
private void DataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e) { MathCell mCell = MathCellsProvider.GetMathCell(dataGridView.CurrentCell); dataGridView.CurrentCell.Value = mCell.Formula; }