DataGridView.AutoResizeColumn Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dostosowuje szerokość określonej kolumny, aby dopasować zawartość jej komórek.
Przeciążenia
AutoResizeColumn(Int32) |
Dostosowuje szerokość określonej kolumny, aby pasowała do zawartości wszystkich komórek, w tym komórki nagłówka. |
AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode) |
Dostosowuje szerokość określonej kolumny przy użyciu określonego trybu rozmiaru. |
AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean) |
Dostosowuje szerokość określonej kolumny przy użyciu określonego trybu rozmiaru, opcjonalnie oblicza szerokość z oczekiwaniami, że wysokość wierszy zostanie później skorygowana. |
AutoResizeColumn(Int32)
Dostosowuje szerokość określonej kolumny, aby pasowała do zawartości wszystkich komórek, w tym komórki nagłówka.
public:
void AutoResizeColumn(int columnIndex);
public void AutoResizeColumn (int columnIndex);
member this.AutoResizeColumn : int -> unit
Public Sub AutoResizeColumn (columnIndex As Integer)
Parametry
- columnIndex
- Int32
Indeks kolumny do zmiany rozmiaru.
Wyjątki
columnIndex
nie znajduje się w prawidłowym zakresie od 0 do liczby kolumn minus 1.
Przykłady
Poniższy przykład kodu używa tej metody, aby szerokość kolumny wystarczająco duża, aby pomieścić nową wartość komórki. Ten przykład jest częścią większego przykładu dostępnego w temacie How to: Manipulate Rows in the Windows Forms DataGridView Control (Manipulowanie wierszami w kontrolce 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
Uwagi
Ta metoda jest przydatna, jeśli chcesz kontrolować, kiedy zmienia się rozmiar kolumny. Szerokość kolumny jest dostosowywana tylko raz na wywołanie metody; jeśli zawartość kolumny zostanie później zmieniona, kolumna nie zostanie automatycznie dopasowana. Aby zmienić rozmiar wszystkich kolumn, użyj AutoResizeColumns metody . Aby ustawić kolumnę tak, aby automatycznie zmieniała rozmiar każdej zmiany zawartości, użyj AutoSizeColumnsMode właściwości lub właściwości kolumny AutoSizeMode .
Aby uzyskać więcej informacji na temat zmiany rozmiaru programowego, zobacz Opcje określania rozmiaru w kontrolce dataGridView Windows Forms.
Zobacz też
Dotyczy
AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)
Dostosowuje szerokość określonej kolumny przy użyciu określonego trybu rozmiaru.
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)
Parametry
- columnIndex
- Int32
Indeks kolumny do zmiany rozmiaru.
- autoSizeColumnMode
- DataGridViewAutoSizeColumnMode
Jedna z DataGridViewAutoSizeColumnMode wartości.
Wyjątki
autoSizeColumnMode
ma wartość i ColumnHeadersVisible ma false
wartość ColumnHeader .
columnIndex
nie znajduje się w prawidłowym zakresie od 0 do liczby kolumn minus 1.
autoSizeColumnMode
jest nieprawidłową DataGridViewAutoSizeColumnMode wartością.
Przykłady
Poniższy przykład kodu używa tej metody, aby szerokość kolumny wystarczająco duża, aby pomieścić nową wartość komórki. Ten przykład jest częścią większego przykładu dostępnego w temacie How to: Manipulate Rows in the Windows Forms DataGridView Control (Manipulowanie wierszami w kontrolce 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
Uwagi
Ta metoda jest przydatna, jeśli chcesz kontrolować, kiedy zmienia się rozmiar kolumny. Szerokość kolumny jest dostosowywana tylko raz na wywołanie metody; jeśli zawartość kolumny zostanie później zmieniona, kolumna nie zostanie automatycznie dopasowana. Aby zmienić rozmiar wszystkich kolumn, użyj AutoResizeColumns metody . Aby ustawić kolumnę tak, aby automatycznie zmieniała rozmiar każdej zmiany zawartości, użyj AutoSizeColumnsMode właściwości lub właściwości kolumny AutoSizeMode .
To przeciążenie umożliwia określenie trybu ustalania rozmiaru, który oblicza nową szerokość na podstawie wartości w ograniczonym zestawie komórek, takich jak te w wyświetlanych wierszach. Zwiększa to wydajność, gdy kontrolka zawiera dużą liczbę wierszy.
Aby uzyskać więcej informacji na temat zmiany rozmiaru programowego, zobacz Opcje określania rozmiaru w kontrolce dataGridView Windows Forms.
Zobacz też
Dotyczy
AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)
Dostosowuje szerokość określonej kolumny przy użyciu określonego trybu rozmiaru, opcjonalnie oblicza szerokość z oczekiwaniami, że wysokość wierszy zostanie później skorygowana.
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)
Parametry
- columnIndex
- Int32
Indeks kolumny do zmiany rozmiaru.
- autoSizeColumnMode
- DataGridViewAutoSizeColumnMode
Jedna z DataGridViewAutoSizeColumnMode wartości.
- fixedHeight
- Boolean
true
aby obliczyć nową szerokość na podstawie bieżących wysokości wierszy; false
aby obliczyć szerokość z oczekiwaniami, że wysokość wiersza również zostanie skorygowana.
Wyjątki
autoSizeColumnMode
ma wartość i ColumnHeadersVisible ma false
wartość ColumnHeader .
columnIndex
nie znajduje się w prawidłowym zakresie od 0 do liczby kolumn minus 1.
autoSizeColumnMode
jest nieprawidłową DataGridViewAutoSizeColumnMode wartością.
Uwagi
Ta metoda jest przydatna, jeśli chcesz kontrolować, kiedy zmienia się rozmiar kolumny. Szerokość kolumny jest dostosowywana tylko raz na wywołanie metody; jeśli zawartość kolumny zostanie później zmieniona, kolumna nie zostanie automatycznie dopasowana. Aby zmienić rozmiar wszystkich kolumn, użyj AutoResizeColumns metody . Aby ustawić kolumnę tak, aby automatycznie zmieniała rozmiar każdej zmiany zawartości, użyj AutoSizeColumnsMode właściwości lub właściwości kolumny AutoSizeMode .
To przeciążenie umożliwia określenie trybu ustalania rozmiaru, który oblicza nową szerokość na podstawie wartości w ograniczonym zestawie komórek, takich jak te w wyświetlanych wierszach. Zwiększa to wydajność, gdy kontrolka zawiera dużą liczbę wierszy.
To przeciążenie jest chronione i ma na celu umożliwienie osiągnięcia idealnych współczynników wysokości do szerokości komórek w klasie pochodnej DataGridView . Jeśli fixedHeight
jest to false
, szerokość kolumny zostanie obliczona z oczekiwaniami, że wywołasz metodę AutoResizeRow or AutoResizeRows dalej.
Aby uzyskać więcej informacji na temat zmiany rozmiaru programowego, zobacz Opcje określania rozmiaru w kontrolce dataGridView Windows Forms.