DataGridView.AutoResizeColumn Método

Definición

Ajusta el ancho de la columna especificada para adaptarla al contenido de sus celdas.

Sobrecargas

AutoResizeColumn(Int32)

Ajusta el ancho de la columna especificada para adaptarlo al contenido de todas sus celdas, incluida la celda de encabezado.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Ajusta el ancho de la columna especificada utilizando el modo de ajuste de tamaño especificado.

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.

AutoResizeColumn(Int32)

Ajusta el ancho de la columna especificada para adaptarlo al contenido de todas sus celdas, incluida la celda de encabezado.

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.

Excepciones

columnIndex no está en el intervalo válido de 0 al número de columnas menos 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 dar cabida a un nuevo valor de celda. Este ejemplo forma parte de un ejemplo más grande disponible en Cómo: Manipular filas en el control DataGridView de Windows Forms.

// 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. El ancho de columna se ajusta una sola vez por llamada de método; si el contenido de la columna cambia más adelante, la columna no se ajustará automáticamente. Para cambiar el tamaño de todas las columnas, use el AutoResizeColumns método . Para establecer que la columna cambie automáticamente cada vez que cambie su contenido, use la AutoSizeColumnsMode propiedad o la propiedad column AutoSizeMode .

Para obtener más información sobre el cambio de tamaño mediante programación, vea Opciones de ajuste de tamaño en el control DataGridView de Windows Forms.

Consulte también

Se aplica a

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Ajusta el ancho de la columna especificada utilizando el modo de ajuste de tamaño especificado.

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.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Uno de los valores de DataGridViewAutoSizeColumnMode.

Excepciones

autoSizeColumnMode tiene el valor ColumnHeader y ColumnHeadersVisible es false.

autoSizeColumnMode tiene el valor NotSet, Noneo Fill.

columnIndex no está en el intervalo válido de 0 al número de columnas menos 1.

autoSizeColumnMode no es un valor DataGridViewAutoSizeColumnMode válido.

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 dar cabida a un nuevo valor de celda. Este ejemplo forma parte de un ejemplo más grande disponible en Cómo: Manipular filas en el control DataGridView de Windows Forms.

// 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. El ancho de columna se ajusta una sola vez por llamada de método; si el contenido de la columna cambia más adelante, la columna no se ajustará automáticamente. Para cambiar el tamaño de todas las columnas, use el AutoResizeColumns método . Para establecer que la columna cambie automáticamente cada vez que cambie su contenido, use la AutoSizeColumnsMode propiedad o la propiedad column AutoSizeMode .

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. Esto mejora el rendimiento cuando el control contiene un gran número de filas.

Para obtener más información sobre el cambio de tamaño mediante programación, vea Opciones de ajuste de tamaño en el control DataGridView de Windows Forms.

Consulte también

Se aplica a

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.

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.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Uno de los valores de DataGridViewAutoSizeColumnMode.

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.

Excepciones

autoSizeColumnMode tiene el valor ColumnHeader y ColumnHeadersVisible es false.

autoSizeColumnMode tiene el valor NotSet, Noneo Fill.

columnIndex no está en el intervalo válido de 0 al número de columnas menos 1.

autoSizeColumnMode no es un valor DataGridViewAutoSizeColumnMode válido.

Comentarios

Este método es útil si desea controlar cuándo cambia el tamaño de una columna. El ancho de columna se ajusta una sola vez por llamada de método; si el contenido de la columna cambia más adelante, la columna no se ajustará automáticamente. Para cambiar el tamaño de todas las columnas, use el AutoResizeColumns método . Para establecer que la columna cambie automáticamente cada vez que cambie su contenido, use la AutoSizeColumnsMode propiedad o la propiedad column AutoSizeMode .

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. Esto mejora el rendimiento cuando el control contiene un gran número de filas.

Esta sobrecarga está protegida y está diseñada para permitirle lograr relaciones ideales de alto a ancho de celda en una clase derivada DataGridView . Si fixedHeight es false, el ancho de columna se calculará con la expectativa de que llamará al AutoResizeRow método o AutoResizeRows siguiente.

Para obtener más información sobre el cambio de tamaño mediante programación, vea Opciones de ajuste de tamaño en el control DataGridView de Windows Forms.

Consulte también

Se aplica a