Compartilhar via


DataGridView.AutoResizeColumn Método

Definição

Ajusta a largura da coluna especificada para adequar-se ao conteúdo das próprias células.

Sobrecargas

AutoResizeColumn(Int32)

Ajusta a largura da coluna especificada para ajustar o conteúdo de todas as suas células, incluindo a célula de cabeçalho.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Ajusta a largura da coluna especificada usando o modo de tamanho especificado.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Ajusta a largura da coluna especificada usando o modo de tamanho indicado, opcionalmente calculando a largura com a expectativa de que as alturas das linhas serão ajustadas posteriormente.

AutoResizeColumn(Int32)

Ajusta a largura da coluna especificada para ajustar o conteúdo de todas as suas células, incluindo a célula de cabeçalho.

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

O índice da coluna a ser redimensionado.

Exceções

O columnIndex não está no intervalo válido de 0 ao número de colunas menos 1.

Exemplos

O exemplo de código a seguir usa esse método para tornar a largura da coluna grande o suficiente para acomodar um novo valor de célula. Este exemplo faz parte de um exemplo maior disponível em 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

Comentários

Esse método será útil se você quiser controlar quando uma coluna for redimensionar. A largura da coluna é ajustada apenas uma vez por chamada de método; se o conteúdo da coluna for alterado posteriormente, a coluna não será ajustada automaticamente. Para redimensionar todas as colunas, use o AutoResizeColumns método. Para definir a coluna para redimensionar automaticamente sempre que seu conteúdo for alterado, use a AutoSizeColumnsMode propriedade ou a propriedade de coluna AutoSizeMode .

Para obter mais informações sobre o redimensionamento programático, consulte Opções de dimensionamento no controle Windows Forms DataGridView.

Confira também

Aplica-se a

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Ajusta a largura da coluna especificada usando o modo de tamanho 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

O índice da coluna a ser redimensionado.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Um dos valores de DataGridViewAutoSizeColumnMode.

Exceções

O autoSizeColumnMode tem o valor ColumnHeader e ColumnHeadersVisible é false.

O autoSizeColumnMode tem o valor NotSet, None ou Fill.

O columnIndex não está no intervalo válido de 0 ao número de colunas menos 1.

autoSizeColumnMode não é um valor DataGridViewAutoSizeColumnMode válido.

Exemplos

O exemplo de código a seguir usa esse método para tornar a largura da coluna grande o suficiente para acomodar um novo valor de célula. Este exemplo faz parte de um exemplo maior disponível em 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

Comentários

Esse método será útil se você quiser controlar quando uma coluna for redimensionar. A largura da coluna é ajustada apenas uma vez por chamada de método; se o conteúdo da coluna for alterado posteriormente, a coluna não será ajustada automaticamente. Para redimensionar todas as colunas, use o AutoResizeColumns método. Para definir a coluna para redimensionar automaticamente sempre que seu conteúdo for alterado, use a AutoSizeColumnsMode propriedade ou a propriedade de coluna AutoSizeMode .

Essa sobrecarga permite especificar um modo de dimensionamento que calcula a nova largura com base em valores em um conjunto limitado de células, como aquelas em linhas exibidas apenas. Isso melhora o desempenho quando o controle contém um grande número de linhas.

Para obter mais informações sobre o redimensionamento programático, consulte Opções de dimensionamento no controle Windows Forms DataGridView.

Confira também

Aplica-se a

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Ajusta a largura da coluna especificada usando o modo de tamanho indicado, opcionalmente calculando a largura com a expectativa de que as alturas das linhas serão ajustadas posteriormente.

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

O índice da coluna a ser redimensionado.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Um dos valores de DataGridViewAutoSizeColumnMode.

fixedHeight
Boolean

true para calcular a nova largura com base nas alturas de linha atuais; false para calcular a largura com a expectativa de que as alturas de linha também serão ajustadas.

Exceções

O autoSizeColumnMode tem o valor ColumnHeader e ColumnHeadersVisible é false.

O autoSizeColumnMode tem o valor NotSet, None ou Fill.

O columnIndex não está no intervalo válido de 0 ao número de colunas menos 1.

autoSizeColumnMode não é um valor DataGridViewAutoSizeColumnMode válido.

Comentários

Esse método será útil se você quiser controlar quando uma coluna for redimensionar. A largura da coluna é ajustada apenas uma vez por chamada de método; se o conteúdo da coluna for alterado posteriormente, a coluna não será ajustada automaticamente. Para redimensionar todas as colunas, use o AutoResizeColumns método. Para definir a coluna para redimensionar automaticamente sempre que seu conteúdo for alterado, use a AutoSizeColumnsMode propriedade ou a propriedade de coluna AutoSizeMode .

Essa sobrecarga permite especificar um modo de dimensionamento que calcula a nova largura com base em valores em um conjunto limitado de células, como aquelas em linhas exibidas apenas. Isso melhora o desempenho quando o controle contém um grande número de linhas.

Essa sobrecarga é protegida e foi projetada para permitir que você obtenha as taxas ideais de altura para largura de célula em uma classe derivada DataGridView . Se fixedHeight forfalse, a largura da coluna será calculada com a expectativa de que você chamará o método ou AutoResizeRows o AutoResizeRow próximo.

Para obter mais informações sobre o redimensionamento programático, consulte Opções de dimensionamento no controle Windows Forms DataGridView.

Confira também

Aplica-se a