Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

TdxSpreadSheetTableView.CreateCell(Integer,Integer) Method

Returns an underlying cell object of a cell at the specified position in the worksheet.

#Declaration

Delphi
function CreateCell(const ARow: Integer; const AColumn: Integer): TdxSpreadSheetCell; overload; virtual;

#Parameters

Name Type Description
ARow Integer

The target row index.

AColumn Integer

The target column index.

#Returns

Type Description
TdxSpreadSheetCell

The created or existing cell object.

#Remarks

Call the CreateCell function to obtain a cell object that corresponds to the worksheet cell you need to edit. ARow and AColumn parameters specify the target cell position in the worksheet.

#Code Example: Populate Cells and Customize Cell Appearance

The following code example performs two batch operations at control and worksheet levels to change the default (document-wide) cell style, populate cells in the active worksheet, and apply a different style to the populated cells:

var
  ATableView: TdxSpreadSheetTableView;
  ACell: TdxSpreadSheetCell;
  I, J: Integer;
begin
  ATableView := dxSpreadSheet1.ActiveSheetAsTable;  // Accesses the active worksheet

  // Change the spreadsheet document-wide cell style (the first batch operation)
  dxSpreadSheet1.BeginUpdate;  // Initiates the following batch change at the control level
  try
    dxSpreadSheet1.DefaultCellStyle.Brush.BackgroundColor := clWebLightBlue;
    dxSpreadSheet1.DefaultCellStyle.Brush.ForegroundColor := clWebLightGreen;
    dxSpreadSheet1.DefaultCellStyle.Brush.Style := sscfsDiagonalStrip;
    dxSpreadSheet1.DefaultCellStyle.Borders[bRight].Color := clLtGray;
    dxSpreadSheet1.DefaultCellStyle.Borders[bRight].Style := sscbsThin;
    dxSpreadSheet1.DefaultCellStyle.Borders[bBottom].Color := clLtGray;
    dxSpreadSheet1.DefaultCellStyle.Borders[bBottom].Style := sscbsThin;
  finally
    dxSpreadSheet1.EndUpdate;  // Calls EndUpdate regardless of the batch operation's success
  end;

  // Create and populate 75 cells with random integer values (the second batch operation)
  Randomize;  // Initializes the random number generator
  ATableView.BeginUpdate;  // Initiates the following batch change at the worksheet level
  try
    for I := 0 to 14 do  // Iterates through 15 rows
      for J := 0 to 4 do  // Iterates through 5 columns
      begin
        ACell := ATableView.CreateCell(I, J);  // Creates a cell object
        ACell.AsInteger := Random(1000);  // Populates the created cell object with a random integer value
        // Customize cell style settings
        ACell.Style.Borders[bLeft].Color := clWhite;
        ACell.Style.Borders[bLeft].Style := sscbsDotted;
        ACell.Style.Borders[bBottom].Color := clWhite;
        ACell.Style.Borders[bBottom].Style := sscbsDotted;
        ACell.Style.Font.Style := [fsBold, fsItalic];
        ACell.Style.Font.Color := clWhite;
        ACell.Style.Brush.Style := sscfsRevDiagonalStrip;
        ACell.Style.Brush.BackgroundColor := clLime;
        ACell.Style.Brush.ForegroundColor := clGreen;
      end;
  finally
    ATableView.EndUpdate;  // Calls EndUpdate regardless of the batch operation's success
  end;
end;

VCL SpreadSheet: A Cell Population and Style Customization Example

See Also