DataGridView.AutoResizeColumn Метод

Определение

Корректирует ширину указанного столбца по содержимому его ячеек.

Перегрузки

AutoResizeColumn(Int32)

Настраивает ширину указанного столбца по содержимому всех его ячеек, включая ячейку заголовка.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Корректирует ширину указанного столбца с помощью заданного режима установки размеров.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Настраивает ширину указанного столбца с помощью заданного режима установки размеров. При этом дополнительно ширина может вычисляться в предположении, что высота строк будет впоследствии скорректирована.

AutoResizeColumn(Int32)

Настраивает ширину указанного столбца по содержимому всех его ячеек, включая ячейку заголовка.

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

Параметры

columnIndex
Int32

Индекс столбца, размер которого будет изменен.

Исключения

columnIndex не находится в допустимом диапазоне от 0 до количества столбцов минус 1.

Примеры

В следующем примере кода этот метод используется для того, чтобы ширина столбца была достаточно большой для размещения нового значения ячейки. Этот пример является частью более крупного примера, доступного в разделе "Практическое руководство. Управление строками в элементе управления Windows Forms DataGridView".

// 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

Комментарии

Этот метод полезен, если вы хотите управлять изменением размера столбца. Ширина столбца настраивается только один раз для каждого вызова метода; Если содержимое столбца изменится позже, столбец не будет автоматически настраиваться. Чтобы изменить размер всех столбцов, используйте AutoResizeColumns метод. Чтобы задать для столбца автоматическое изменение размера при изменении его содержимого, используйте AutoSizeColumnsMode свойство или свойство столбца AutoSizeMode .

Дополнительные сведения о программном изменении размера см. в разделе "Параметры изменения размера" в элементе управления dataGridView Windows Forms.

См. также раздел

Применяется к

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Корректирует ширину указанного столбца с помощью заданного режима установки размеров.

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)

Параметры

columnIndex
Int32

Индекс столбца, размер которого будет изменен.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Одно из значений перечисления DataGridViewAutoSizeColumnMode.

Исключения

autoSizeColumnMode имеет значение ColumnHeader, а ColumnHeadersVisible равен false.

autoSizeColumnMode имеет значение NotSet, None или Fill.

columnIndex не находится в допустимом диапазоне от 0 до количества столбцов минус 1.

autoSizeColumnMode не является допустимым значением DataGridViewAutoSizeColumnMode.

Примеры

В следующем примере кода этот метод используется для того, чтобы ширина столбца была достаточно большой для размещения нового значения ячейки. Этот пример является частью более крупного примера, доступного в разделе "Практическое руководство. Управление строками в элементе управления Windows Forms DataGridView".

// 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

Комментарии

Этот метод полезен, если вы хотите управлять изменением размера столбца. Ширина столбца настраивается только один раз для каждого вызова метода; Если содержимое столбца изменится позже, столбец не будет автоматически настраиваться. Чтобы изменить размер всех столбцов, используйте AutoResizeColumns метод. Чтобы задать для столбца автоматическое изменение размера при изменении его содержимого, используйте AutoSizeColumnsMode свойство или свойство столбца AutoSizeMode .

Эта перегрузка позволяет указать режим изменения размера, который вычисляет новую ширину на основе значений в ограниченном наборе ячеек, например только в отображаемых строках. Это повышает производительность, если элемент управления содержит большое количество строк.

Дополнительные сведения о программном изменении размера см. в разделе "Параметры изменения размера" в элементе управления dataGridView Windows Forms.

См. также раздел

Применяется к

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Настраивает ширину указанного столбца с помощью заданного режима установки размеров. При этом дополнительно ширина может вычисляться в предположении, что высота строк будет впоследствии скорректирована.

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)

Параметры

columnIndex
Int32

Индекс столбца, размер которого будет изменен.

autoSizeColumnMode
DataGridViewAutoSizeColumnMode

Одно из значений перечисления DataGridViewAutoSizeColumnMode.

fixedHeight
Boolean

Значение true, чтобы новая ширина рассчитывалась исходя из текущей высоты строк; значение false, чтобы ширина рассчитывалась с предположением, что высота строк будет впоследствии также скорректирована.

Исключения

autoSizeColumnMode имеет значение ColumnHeader, а ColumnHeadersVisible равен false.

autoSizeColumnMode имеет значение NotSet, None или Fill.

columnIndex не находится в допустимом диапазоне от 0 до количества столбцов минус 1.

autoSizeColumnMode не является допустимым значением DataGridViewAutoSizeColumnMode.

Комментарии

Этот метод полезен, если вы хотите управлять изменением размера столбца. Ширина столбца настраивается только один раз для каждого вызова метода; Если содержимое столбца изменится позже, столбец не будет автоматически настраиваться. Чтобы изменить размер всех столбцов, используйте AutoResizeColumns метод. Чтобы задать для столбца автоматическое изменение размера при изменении его содержимого, используйте AutoSizeColumnsMode свойство или свойство столбца AutoSizeMode .

Эта перегрузка позволяет указать режим изменения размера, который вычисляет новую ширину на основе значений в ограниченном наборе ячеек, например только в отображаемых строках. Это повышает производительность, если элемент управления содержит большое количество строк.

Эта перегрузка защищена и предназначена для достижения идеальных соотношений высоты к ширине ячеек в производном DataGridView классе. Если fixedHeight это falseтак, ширина столбца будет вычисляться с учетом того, что вы вызовете AutoResizeRow следующий метод или AutoResizeRows метод.

Дополнительные сведения о программном изменении размера см. в разделе "Параметры изменения размера" в элементе управления dataGridView Windows Forms.

См. также раздел

Применяется к