Skip to main content

SpreadsheetControl.RowHeightChanged Event

Occurs after the row height was changed.

Namespace: DevExpress.XtraSpreadsheet

Assembly: DevExpress.XtraSpreadsheet.v23.2.dll

NuGet Package: DevExpress.Win.Spreadsheet

Declaration

public event RowHeightChangedEventHandler RowHeightChanged

Event Data

The RowHeightChanged event's data class is RowHeightChangedEventArgs. The following properties provide information specific to this event:

Property Description
Index Returns the index of the row whose height was changed.

Remarks

The RowHeightChanged event occurs in the following cases:

See how to specify the row height or column width.

The example below shows how to use the SpreadsheetControl.RowHeightChanged and SpreadsheetControl.ColumnWidthChanged events to keep a picture in the center of the destination cell when a user changes the cell’s width or height.

cell resized

public Form1()
{
    InitializeComponent();
    IWorkbook workbook = spreadsheetControl1.Document;
    Worksheet worksheet = workbook.Worksheets.ActiveWorksheet;

    // Add a picture to cell B2.
    Cell destCell = worksheet.Cells["B2"];
    Picture picture = worksheet.Pictures.AddPicture("DxLogo.png", destCell);
    // Specify the cell width and height.
    double cellWidth = destCell.ColumnWidth = picture.Width + 150;
    double cellHeight = destCell.RowHeight = picture.Height + 50;

    // Center the picture in the cell.
    double columnOffset = (destCell.ColumnWidth - picture.Width) / 2;
    double rowOffset = (destCell.RowHeight - picture.Height) / 2;
    picture.Move((float)rowOffset, (float)columnOffset);

    spreadsheetControl1.ColumnWidthChanged += (s, e) =>
    {
        if (e.Index == destCell.ColumnIndex)
        {
            // Move the picture to keep it in the center of the cell.
            columnOffset = (destCell.ColumnWidth - cellWidth) / 2;
            picture.Left += (float)columnOffset;
            cellWidth = destCell.ColumnWidth;
        }
    };

    spreadsheetControl1.RowHeightChanged += (s, e) =>
    {
        if (e.Index == destCell.RowIndex)
        {
            // Move the picture to keep it in the center of the cell.
            rowOffset = (destCell.RowHeight - cellHeight) / 2;
            picture.Top += (float)rowOffset;
            cellHeight = destCell.RowHeight;
        }
    };
}
See Also