DataGridView.AutoResizeRows Method (Int32, Int32, DataGridViewAutoSizeRowMode, Boolean)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Adjusts the heights of the specified rows using the specified size mode, optionally calculating the heights with the expectation that column widths will subsequently be adjusted.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

Protected Sub AutoResizeRows (
	rowIndexStart As Integer,
	rowsCount As Integer,
	autoSizeRowMode As DataGridViewAutoSizeRowMode,
	fixedWidth As Boolean


Type: System.Int32

The index of the first row to resize.

Type: System.Int32

The number of rows to resize.

Type: System.Windows.Forms.DataGridViewAutoSizeRowMode

One of the DataGridViewAutoSizeRowMode values.

Type: System.Boolean

true to calculate the new heights based on the current column widths; false to calculate the heights with the expectation that the column widths will also be adjusted.

Exception Condition

autoSizeRowsMode has the value AllHeaders or DisplayedHeaders, and RowHeadersVisible is false.


autoSizeRowsMode is not a valid DataGridViewAutoSizeRowsMode value.


autoSizeRowsMode has the value None.


rowIndexStart is less than 0.


rowsCount is less than 0.

This method is useful if you want to control when rows resize, but you want to resize only a specific subset of rows, such as those within a range of bound records that have been updated. The row heights for the specified rows are adjusted only once per method call; if the contents of the rows later change, the rows will not automatically adjust. To resize a specific row, use the AutoResizeRow method. To resize all rows, use a different overload of the AutoResizeRows method. To set the rows to automatically resize whenever their contents change, use the AutoSizeRowsMode property.

For cell contents to wrap onto multiple lines when a row is resized, the cell style in effect for the cell must have a WrapMode property value of True.

This overload lets you specify a sizing mode that calculates the new heights based on values in a limited set of cells, such as those in displayed rows only. This improves performance when the control contains a large number of rows.

This overload is protected and is designed to enable you to achieve ideal cell height-to-width ratios in a derived DataGridView class. If the fixedWidth parameter is false, the row heights will be calculated with the expectation that you will call the AutoResizeColumn or AutoResizeColumns method next.

For more information about programmatic resizing, see Sizing Options in the Windows Forms DataGridView Control.

.NET Framework
Available since 2.0
Return to top