DataGridView.AutoResizeColumn Método

Definición

Ajusta el ancho de la columna especificada para adaptarla al contenido de sus celdas.Adjusts the width of the specified column to fit the contents of its cells.

Sobrecargas

AutoResizeColumn(Int32)

Ajusta el ancho de la columna especificada para adaptarlo al contenido de todas sus celdas, incluida la celda de encabezado.Adjusts the width of the specified column to fit the contents of all its cells, including the header cell.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Ajusta el ancho de la columna especificada utilizando el modo de ajuste de tamaño especificado.Adjusts the width of the specified column using the specified size mode.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Ajusta el ancho de la columna especificada usando el modo de ajuste de tamaño especificado y, opcionalmente, calculando el ancho con la expectativa de que se ajuste a continuación el alto de las filas.Adjusts the width of the specified column using the specified size mode, optionally calculating the width with the expectation that row heights will subsequently be adjusted.

AutoResizeColumn(Int32)

Ajusta el ancho de la columna especificada para adaptarlo al contenido de todas sus celdas, incluida la celda de encabezado.Adjusts the width of the specified column to fit the contents of all its cells, including the header cell.

public:
 void AutoResizeColumn(int columnIndex);
public void AutoResizeColumn (int columnIndex);
member this.AutoResizeColumn : int -> unit
Public Sub AutoResizeColumn (columnIndex As Integer)

Parámetros

columnIndex
Int32

Índice de la columna cuyo tamaño se va a ajustar.The index of the column to resize.

Excepciones

columnIndex no está en el intervalo válido de 0 para el número de columnas menos 1.columnIndex is not in the valid range of 0 to the number of columns minus 1.

Ejemplos

En el ejemplo de código siguiente se usa este método para que el ancho de columna sea lo suficientemente grande como para alojar un nuevo valor de celda.The following code example uses this method to make the column width large enough to accommodate a new cell value. Este ejemplo forma parte de un ejemplo más grande disponible en [How para: Manipular filas en el control DataGridView Windows Forms @ no__t-0.This example is part of a larger example available in How to: Manipulate Rows in the Windows Forms DataGridView Control.

// Give cheescake excellent rating.
void Button8_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
   UpdateStars( dataGridView->Rows[ 4 ], L"******************" );
}

int ratingColumn;
void UpdateStars( DataGridViewRow^ row, String^ stars )
{
   row->Cells[ ratingColumn ]->Value = stars;
   
   // Resize the column width to account for the new value.
   row->DataGridView->AutoResizeColumn( ratingColumn, DataGridViewAutoSizeColumnMode::DisplayedCells );
}


// Give cheescake excellent rating.
private void Button8_Click(object sender,
    System.EventArgs e)
{
    UpdateStars(dataGridView.Rows[4], "******************");
}

int ratingColumn = 3;

private void UpdateStars(DataGridViewRow row, string stars)
{

    row.Cells[ratingColumn].Value = stars;

    // Resize the column width to account for the new value.
    row.DataGridView.AutoResizeColumn(ratingColumn, 
        DataGridViewAutoSizeColumnMode.DisplayedCells);
}
' Give cheescake excellent rating.
Private Sub Button8_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles Button8.Click

    UpdateStars(dataGridView.Rows(4), "******************")
End Sub

Private ratingColumn As Integer = 3

Private Sub UpdateStars(ByVal row As DataGridViewRow, _
    ByVal stars As String)

    row.Cells(ratingColumn).Value = stars

    ' Resize the column width to account for the new value.
    row.DataGridView.AutoResizeColumn(ratingColumn, _
        DataGridViewAutoSizeColumnMode.DisplayedCells)

End Sub

Comentarios

Este método es útil si desea controlar cuándo cambia el tamaño de una columna.This method is useful if you want to control when a column resizes. El ancho de columna se ajusta solo una vez por cada llamada al método. Si más adelante cambia el contenido de la columna, la columna no se ajustará automáticamente.The column width is adjusted only once per method call; if the contents of the column later change, the column will not automatically adjust. Para cambiar el tamaño de todas las columnas, use el método AutoResizeColumns.To resize all columns, use the AutoResizeColumns method. Para establecer la columna de forma que se ajuste automáticamente al tamaño de cada vez que cambie su contenido, use la propiedad AutoSizeColumnsMode o la propiedad AutoSizeMode de la columna.To set the column to automatically resize whenever its contents change, use the AutoSizeColumnsMode property or the column AutoSizeMode property.

Para obtener más información sobre el cambio de tamaño mediante programación, consulte Opciones de ajuste de tamaño en el control DataGridView Windows Forms.For more information about programmatic resizing, see Sizing Options in the Windows Forms DataGridView Control.

Consulte también:

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Ajusta el ancho de la columna especificada utilizando el modo de ajuste de tamaño especificado.Adjusts the width of the specified column using the specified size mode.

public:
 void AutoResizeColumn(int columnIndex, System::Windows::Forms::DataGridViewAutoSizeColumnMode autoSizeColumnMode);
public void AutoResizeColumn (int columnIndex, System.Windows.Forms.DataGridViewAutoSizeColumnMode autoSizeColumnMode);
member this.AutoResizeColumn : int * System.Windows.Forms.DataGridViewAutoSizeColumnMode -> unit
Public Sub AutoResizeColumn (columnIndex As Integer, autoSizeColumnMode As DataGridViewAutoSizeColumnMode)

Parámetros

columnIndex
Int32

Índice de la columna cuyo tamaño se va a ajustar.The index of the column to resize.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Uno de los valores de DataGridViewAutoSizeColumnMode.One of the DataGridViewAutoSizeColumnMode values.

Excepciones

autoSizeColumnMode tiene el valor ColumnHeader y ColumnHeadersVisible es false.autoSizeColumnMode has the value ColumnHeader and ColumnHeadersVisible is false.

autoSizeColumnMode tiene el valor NotSet, Noneo Fill.autoSizeColumnMode has the value NotSet, None, or Fill.

columnIndex no está en el intervalo válido de 0 para el número de columnas menos 1.columnIndex is not in the valid range of 0 to the number of columns minus 1.

autoSizeColumnMode no es un valor DataGridViewAutoSizeColumnMode válido.autoSizeColumnMode is not a valid DataGridViewAutoSizeColumnMode value.

Ejemplos

En el ejemplo de código siguiente se usa este método para que el ancho de columna sea lo suficientemente grande como para alojar un nuevo valor de celda.The following code example uses this method to make the column width large enough to accommodate a new cell value. Este ejemplo forma parte de un ejemplo más grande disponible en [How para: Manipular filas en el control DataGridView Windows Forms @ no__t-0.This example is part of a larger example available in How to: Manipulate Rows in the Windows Forms DataGridView Control.

// Give cheescake excellent rating.
void Button8_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
   UpdateStars( dataGridView->Rows[ 4 ], L"******************" );
}

int ratingColumn;
void UpdateStars( DataGridViewRow^ row, String^ stars )
{
   row->Cells[ ratingColumn ]->Value = stars;
   
   // Resize the column width to account for the new value.
   row->DataGridView->AutoResizeColumn( ratingColumn, DataGridViewAutoSizeColumnMode::DisplayedCells );
}


// Give cheescake excellent rating.
private void Button8_Click(object sender,
    System.EventArgs e)
{
    UpdateStars(dataGridView.Rows[4], "******************");
}

int ratingColumn = 3;

private void UpdateStars(DataGridViewRow row, string stars)
{

    row.Cells[ratingColumn].Value = stars;

    // Resize the column width to account for the new value.
    row.DataGridView.AutoResizeColumn(ratingColumn, 
        DataGridViewAutoSizeColumnMode.DisplayedCells);
}
' Give cheescake excellent rating.
Private Sub Button8_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles Button8.Click

    UpdateStars(dataGridView.Rows(4), "******************")
End Sub

Private ratingColumn As Integer = 3

Private Sub UpdateStars(ByVal row As DataGridViewRow, _
    ByVal stars As String)

    row.Cells(ratingColumn).Value = stars

    ' Resize the column width to account for the new value.
    row.DataGridView.AutoResizeColumn(ratingColumn, _
        DataGridViewAutoSizeColumnMode.DisplayedCells)

End Sub

Comentarios

Este método es útil si desea controlar cuándo cambia el tamaño de una columna.This method is useful if you want to control when a column resizes. El ancho de columna se ajusta solo una vez por cada llamada al método. Si más adelante cambia el contenido de la columna, la columna no se ajustará automáticamente.The column width is adjusted only once per method call; if the contents of the column later change, the column will not automatically adjust. Para cambiar el tamaño de todas las columnas, use el método AutoResizeColumns.To resize all columns, use the AutoResizeColumns method. Para establecer la columna de forma que se ajuste automáticamente al tamaño de cada vez que cambie su contenido, use la propiedad AutoSizeColumnsMode o la propiedad AutoSizeMode de la columna.To set the column to automatically resize whenever its contents change, use the AutoSizeColumnsMode property or the column AutoSizeMode property.

Esta sobrecarga permite especificar un modo de ajuste de tamaño que calcula el nuevo ancho en función de los valores de un conjunto limitado de celdas, como los de las filas mostradas únicamente.This overload lets you specify a sizing mode that calculates the new width based on values in a limited set of cells, such as those in displayed rows only. Esto mejora el rendimiento cuando el control contiene un gran número de filas.This improves performance when the control contains a large number of rows.

Para obtener más información sobre el cambio de tamaño mediante programación, consulte Opciones de ajuste de tamaño en el control DataGridView Windows Forms.For more information about programmatic resizing, see Sizing Options in the Windows Forms DataGridView Control.

Consulte también:

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Ajusta el ancho de la columna especificada usando el modo de ajuste de tamaño especificado y, opcionalmente, calculando el ancho con la expectativa de que se ajuste a continuación el alto de las filas.Adjusts the width of the specified column using the specified size mode, optionally calculating the width with the expectation that row heights will subsequently be adjusted.

protected:
 void AutoResizeColumn(int columnIndex, System::Windows::Forms::DataGridViewAutoSizeColumnMode autoSizeColumnMode, bool fixedHeight);
protected void AutoResizeColumn (int columnIndex, System.Windows.Forms.DataGridViewAutoSizeColumnMode autoSizeColumnMode, bool fixedHeight);
member this.AutoResizeColumn : int * System.Windows.Forms.DataGridViewAutoSizeColumnMode * bool -> unit
Protected Sub AutoResizeColumn (columnIndex As Integer, autoSizeColumnMode As DataGridViewAutoSizeColumnMode, fixedHeight As Boolean)

Parámetros

columnIndex
Int32

Índice de la columna cuyo tamaño se va a ajustar.The index of the column to resize.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Uno de los valores de DataGridViewAutoSizeColumnMode.One of the DataGridViewAutoSizeColumnMode values.

fixedHeight
Boolean

Es true para calcular el nuevo ancho a partir del alto actual de las filas; es false para calcular el ancho con la expectativa de que también se ajuste el alto de las filas.true to calculate the new width based on the current row heights; false to calculate the width with the expectation that the row heights will also be adjusted.

Excepciones

autoSizeColumnMode tiene el valor ColumnHeader y ColumnHeadersVisible es false.autoSizeColumnMode has the value ColumnHeader and ColumnHeadersVisible is false.

autoSizeColumnMode tiene el valor NotSet, Noneo Fill.autoSizeColumnMode has the value NotSet, None, or Fill.

columnIndex no está en el intervalo válido de 0 para el número de columnas menos 1.columnIndex is not in the valid range of 0 to the number of columns minus 1.

autoSizeColumnMode no es un valor DataGridViewAutoSizeColumnMode válido.autoSizeColumnMode is not a valid DataGridViewAutoSizeColumnMode value.

Comentarios

Este método es útil si desea controlar cuándo cambia el tamaño de una columna.This method is useful if you want to control when a column resizes. El ancho de columna se ajusta solo una vez por cada llamada al método. Si más adelante cambia el contenido de la columna, la columna no se ajustará automáticamente.The column width is adjusted only once per method call; if the contents of the column later change, the column will not automatically adjust. Para cambiar el tamaño de todas las columnas, use el método AutoResizeColumns.To resize all columns, use the AutoResizeColumns method. Para establecer la columna de forma que se ajuste automáticamente al tamaño de cada vez que cambie su contenido, use la propiedad AutoSizeColumnsMode o la propiedad AutoSizeMode de la columna.To set the column to automatically resize whenever its contents change, use the AutoSizeColumnsMode property or the column AutoSizeMode property.

Esta sobrecarga permite especificar un modo de ajuste de tamaño que calcula el nuevo ancho en función de los valores de un conjunto limitado de celdas, como los de las filas mostradas únicamente.This overload lets you specify a sizing mode that calculates the new width based on values in a limited set of cells, such as those in displayed rows only. Esto mejora el rendimiento cuando el control contiene un gran número de filas.This improves performance when the control contains a large number of rows.

Esta sobrecarga está protegida y está diseñada para que pueda lograr las relaciones ideales de alto a ancho de celda en una clase derivada de DataGridView.This overload is protected and is designed to enable you to achieve ideal cell height-to-width ratios in a derived DataGridView class. Si fixedHeight es false, el ancho de columna se calculará con la expectativa de que llame al método AutoResizeRow o AutoResizeRows siguiente.If fixedHeight is false, the column width will be calculated with the expectation that you will call the AutoResizeRow or AutoResizeRows method next.

Para obtener más información sobre el cambio de tamaño mediante programación, consulte Opciones de ajuste de tamaño en el control DataGridView Windows Forms.For more information about programmatic resizing, see Sizing Options in the Windows Forms DataGridView Control.

Consulte también:

Se aplica a