DataGridView.AutoResizeRows Method

Definition

Adjusts the heights of some or all rows to fit their contents.

Overloads

AutoResizeRows(DataGridViewAutoSizeRowsMode)

Adjusts the heights of the rows using the specified size mode value.

AutoResizeRows(Int32, Int32, DataGridViewAutoSizeRowMode, Boolean)

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.

AutoResizeRows()

Adjusts the heights of all rows to fit the contents of all their cells, including the header cells.

AutoResizeRows(DataGridViewAutoSizeRowsMode, Boolean)

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

AutoResizeRows(DataGridViewAutoSizeRowsMode)

Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs

Adjusts the heights of the rows using the specified size mode value.

C#
public void AutoResizeRows(System.Windows.Forms.DataGridViewAutoSizeRowsMode autoSizeRowsMode);

Parameters

autoSizeRowsMode
DataGridViewAutoSizeRowsMode

One of the DataGridViewAutoSizeRowsMode values.

Exceptions

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

autoSizeRowsMode is not a valid DataGridViewAutoSizeRowsMode value.

autoSizeRowsMode has the value None.

Examples

The following code example demonstrates how to resize all rows based on non-header cell content. This code example is part of a larger example provided in How to: Programmatically Resize Cells to Fit Content in the Windows Forms DataGridView Control.

C#
private void SizeAllRows(Object sender,
    EventArgs e)
{
    dataGridView1.AutoResizeRows(
        DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders);
}

Remarks

This method is useful if you want to control when rows resize. The row heights 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 a subset of rows, use the AutoResizeRows(Int32, Int32, DataGridViewAutoSizeRowMode, Boolean) overload. 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.

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

See also

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

AutoResizeRows(Int32, Int32, DataGridViewAutoSizeRowMode, Boolean)

Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs

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.

C#
protected void AutoResizeRows(int rowIndexStart, int rowsCount, System.Windows.Forms.DataGridViewAutoSizeRowMode autoSizeRowMode, bool fixedWidth);

Parameters

rowIndexStart
Int32

The index of the first row to resize.

rowsCount
Int32

The number of rows to resize.

autoSizeRowMode
DataGridViewAutoSizeRowMode

One of the DataGridViewAutoSizeRowMode values.

fixedWidth
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.

Exceptions

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.

-or-

rowsCount is less than 0.

Remarks

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.

See also

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

AutoResizeRows()

Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs

Adjusts the heights of all rows to fit the contents of all their cells, including the header cells.

C#
public void AutoResizeRows();

Examples

The following code example demonstrates how to resize all rows based on non-header cell content. This code example is part of a larger example provided in How to: Programmatically Resize Cells to Fit Content in the Windows Forms DataGridView Control.

C#
private void SizeAllRows(Object sender,
    EventArgs e)
{
    dataGridView1.AutoResizeRows(
        DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders);
}

Remarks

This method is useful if you want to control when rows resize. The row heights 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 a subset of rows, use the AutoResizeRows(Int32, Int32, DataGridViewAutoSizeRowMode, Boolean) overload. 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.

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

See also

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

AutoResizeRows(DataGridViewAutoSizeRowsMode, Boolean)

Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs
Source:
DataGridView.Methods.cs

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

C#
protected void AutoResizeRows(System.Windows.Forms.DataGridViewAutoSizeRowsMode autoSizeRowsMode, bool fixedWidth);

Parameters

autoSizeRowsMode
DataGridViewAutoSizeRowsMode

One of the DataGridViewAutoSizeRowsMode values.

fixedWidth
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.

Exceptions

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

autoSizeRowsMode is not a valid DataGridViewAutoSizeRowsMode value.

autoSizeRowsMode has the value None.

Remarks

This method is useful if you want to control when rows resize. The row heights 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 a subset of rows, use the AutoResizeRows(Int32, Int32, DataGridViewAutoSizeRowMode, Boolean) overload. 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.

See also

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10