DataGridView.AutoResizeColumns Method

Definition

Adjusts the width of all columns to fit the contents of their cells.

Overloads

AutoResizeColumns()

Adjusts the width of all columns to fit the contents of all their cells, including the header cells.

AutoResizeColumns(DataGridViewAutoSizeColumnsMode)

Adjusts the width of all columns using the specified size mode.

AutoResizeColumns(DataGridViewAutoSizeColumnsMode, Boolean)

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

AutoResizeColumns()

Adjusts the width of all columns to fit the contents of all their cells, including the header cells.

public:
 void AutoResizeColumns();
public void AutoResizeColumns ();
member this.AutoResizeColumns : unit -> unit
Public Sub AutoResizeColumns ()

Examples

The following code example resizes all columns to fit the contents of the columns and the column headers. 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.

void SizeAllColumns( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   dataGridView1->AutoResizeColumns( DataGridViewAutoSizeColumnsMode::AllCells );
}
private void SizeAllColumns(Object sender, EventArgs e)
{
    dataGridView1.AutoResizeColumns(
        DataGridViewAutoSizeColumnsMode.AllCells);
}
Private Sub SizeAllColumns(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles Button6.Click

    DataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)

End Sub

Remarks

This method is useful if you want to control when columns resize. The column widths are adjusted only once per method call; if the contents of the columns later change, the columns will not automatically adjust. To resize a specific column, use the AutoResizeColumn method. To set the columns to automatically resize whenever their contents change, use the AutoSizeColumnsMode property or the column AutoSizeMode property.

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

See also

Applies to

AutoResizeColumns(DataGridViewAutoSizeColumnsMode)

Adjusts the width of all columns using the specified size mode.

public:
 void AutoResizeColumns(System::Windows::Forms::DataGridViewAutoSizeColumnsMode autoSizeColumnsMode);
public void AutoResizeColumns (System.Windows.Forms.DataGridViewAutoSizeColumnsMode autoSizeColumnsMode);
member this.AutoResizeColumns : System.Windows.Forms.DataGridViewAutoSizeColumnsMode -> unit
Public Sub AutoResizeColumns (autoSizeColumnsMode As DataGridViewAutoSizeColumnsMode)

Parameters

autoSizeColumnsMode
DataGridViewAutoSizeColumnsMode

One of the DataGridViewAutoSizeColumnsMode values.

Exceptions

autoSizeColumnsMode has the value ColumnHeader and ColumnHeadersVisible is false.

autoSizeColumnsMode has the value None or Fill.

autoSizeColumnsMode is not a valid DataGridViewAutoSizeColumnsMode value.

Examples

The following code example resizes all columns to fit the contents of the columns and the column headers. 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.

void SizeAllColumns( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   dataGridView1->AutoResizeColumns( DataGridViewAutoSizeColumnsMode::AllCells );
}
private void SizeAllColumns(Object sender, EventArgs e)
{
    dataGridView1.AutoResizeColumns(
        DataGridViewAutoSizeColumnsMode.AllCells);
}
Private Sub SizeAllColumns(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles Button6.Click

    DataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)

End Sub

Remarks

This method is useful if you want to control when columns resize. The column widths are adjusted only once per method call; if the contents of the columns later change, the columns will not automatically adjust. To resize a specific column, use the AutoResizeColumn method. To set the columns to automatically resize whenever their contents change, use the AutoSizeColumnsMode property or the column AutoSizeMode property.

This overload lets you specify a sizing mode that calculates the new widths 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

AutoResizeColumns(DataGridViewAutoSizeColumnsMode, Boolean)

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

protected:
 void AutoResizeColumns(System::Windows::Forms::DataGridViewAutoSizeColumnsMode autoSizeColumnsMode, bool fixedHeight);
protected void AutoResizeColumns (System.Windows.Forms.DataGridViewAutoSizeColumnsMode autoSizeColumnsMode, bool fixedHeight);
member this.AutoResizeColumns : System.Windows.Forms.DataGridViewAutoSizeColumnsMode * bool -> unit
Protected Sub AutoResizeColumns (autoSizeColumnsMode As DataGridViewAutoSizeColumnsMode, fixedHeight As Boolean)

Parameters

autoSizeColumnsMode
DataGridViewAutoSizeColumnsMode

One of the DataGridViewAutoSizeColumnsMode values.

fixedHeight
Boolean

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

Exceptions

autoSizeColumnsMode has the value ColumnHeader and ColumnHeadersVisible is false.

autoSizeColumnsMode has the value None or Fill.

autoSizeColumnsMode is not a valid DataGridViewAutoSizeColumnsMode value.

Remarks

This method is useful if you want to control when columns resize. The column widths are adjusted only once per method call; if the contents of the columns later change, the columns will not automatically adjust. To resize a specific column, use the AutoResizeColumn method. To set the columns to automatically resize whenever their contents change, use the AutoSizeColumnsMode property or the column AutoSizeMode property.

This overload lets you specify a sizing mode that calculates the new widths 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 fixedHeight is false, the column widths will be calculated with the expectation that you will call the AutoResizeRow or AutoResizeRows method next.

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

See also

Applies to