Sdílet prostřednictvím


DataGridView.AutoResizeColumn Metoda

Definice

Upraví šířku zadaného sloupce tak, aby odpovídal obsahu buněk.

Přetížení

AutoResizeColumn(Int32)

Upraví šířku zadaného sloupce tak, aby odpovídal obsahu všech buněk, včetně buňky záhlaví.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Upraví šířku zadaného sloupce pomocí zadaného režimu velikosti.

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Upraví šířku zadaného sloupce pomocí zadaného režimu velikosti a volitelně vypočítá šířku s očekáváním, že výšky řádků se následně upraví.

AutoResizeColumn(Int32)

Upraví šířku zadaného sloupce tak, aby odpovídal obsahu všech buněk, včetně buňky záhlaví.

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

Parametry

columnIndex
Int32

Index sloupce, který chcete změnit velikost.

Výjimky

columnIndex není v platném rozsahu 0 až po počet sloupců minus 1.

Příklady

Následující příklad kódu používá tuto metodu k tomu, aby šířka sloupce byla dostatečně velká, aby vyhovovala nové hodnotě buňky. Tento příklad je součástí většího příkladu, který je k dispozici v části Postupy: Manipulace s řádky v ovládacím prvku model 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

Poznámky

Tato metoda je užitečná, pokud chcete určit, kdy se změní velikost sloupce. Šířka sloupce se upraví pouze jednou na volání metody; pokud se obsah sloupce později změní, sloupec se automaticky neupraví. Pokud chcete změnit velikost všech sloupců, použijte metodu AutoResizeColumns . Pokud chcete nastavit, aby se sloupec automaticky měnil při každé změně jeho obsahu, použijte AutoSizeColumnsMode vlastnost nebo vlastnost sloupce AutoSizeMode .

Další informace o programové změně velikosti naleznete v tématu Možnosti velikosti v ovládacím prvku model Windows Forms DataGridView.

Viz také

Platí pro

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode)

Upraví šířku zadaného sloupce pomocí zadaného režimu velikosti.

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

Index sloupce, který chcete změnit velikost.

Výjimky

autoSizeColumnMode má hodnotu ColumnHeader a ColumnHeadersVisible je false.

autoSizeColumnMode má hodnotu NotSet, Nonenebo Fill.

columnIndex není v platném rozsahu 0 až po počet sloupců minus 1.

autoSizeColumnMode není platná DataGridViewAutoSizeColumnMode hodnota.

Příklady

Následující příklad kódu používá tuto metodu k tomu, aby šířka sloupce byla dostatečně velká, aby vyhovovala nové hodnotě buňky. Tento příklad je součástí většího příkladu, který je k dispozici v části Postupy: Manipulace s řádky v ovládacím prvku model 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

Poznámky

Tato metoda je užitečná, pokud chcete určit, kdy se změní velikost sloupce. Šířka sloupce se upraví pouze jednou na volání metody; pokud se obsah sloupce později změní, sloupec se automaticky neupraví. Pokud chcete změnit velikost všech sloupců, použijte metodu AutoResizeColumns . Pokud chcete nastavit, aby se sloupec automaticky měnil při každé změně jeho obsahu, použijte AutoSizeColumnsMode vlastnost nebo vlastnost sloupce AutoSizeMode .

Toto přetížení umožňuje určit režim velikosti, který vypočítá novou šířku na základě hodnot v omezené sadě buněk, například v zobrazených řádcích. Tím se zlepší výkon, když ovládací prvek obsahuje velký počet řádků.

Další informace o programové změně velikosti naleznete v tématu Možnosti velikosti v ovládacím prvku model Windows Forms DataGridView.

Viz také

Platí pro

AutoResizeColumn(Int32, DataGridViewAutoSizeColumnMode, Boolean)

Upraví šířku zadaného sloupce pomocí zadaného režimu velikosti a volitelně vypočítá šířku s očekáváním, že výšky řádků se následně upraví.

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

Index sloupce, který chcete změnit velikost.

fixedHeight
Boolean

true k výpočtu nové šířky na základě aktuální výšky řádku; false k výpočtu šířky s očekáváním, že se upraví i výška řádků.

Výjimky

autoSizeColumnMode má hodnotu ColumnHeader a ColumnHeadersVisible je false.

autoSizeColumnMode má hodnotu NotSet, Nonenebo Fill.

columnIndex není v platném rozsahu 0 až po počet sloupců minus 1.

autoSizeColumnMode není platná DataGridViewAutoSizeColumnMode hodnota.

Poznámky

Tato metoda je užitečná, pokud chcete určit, kdy se změní velikost sloupce. Šířka sloupce se upraví pouze jednou na volání metody; pokud se obsah sloupce později změní, sloupec se automaticky neupraví. Pokud chcete změnit velikost všech sloupců, použijte metodu AutoResizeColumns . Pokud chcete nastavit, aby se sloupec automaticky měnil při každé změně jeho obsahu, použijte AutoSizeColumnsMode vlastnost nebo vlastnost sloupce AutoSizeMode .

Toto přetížení umožňuje určit režim velikosti, který vypočítá novou šířku na základě hodnot v omezené sadě buněk, například v zobrazených řádcích. Tím se zlepší výkon, když ovládací prvek obsahuje velký počet řádků.

Toto přetížení je chráněné a je navržené tak, aby vám umožnilo dosáhnout ideálních poměrů výšky buňky k šířce v odvozené DataGridView třídě. Pokud fixedHeight anofalse, šířka sloupce se vypočítá s očekáváním, že budete volat metodu nebo AutoResizeRows metoduAutoResizeRow.

Další informace o programové změně velikosti naleznete v tématu Možnosti velikosti v ovládacím prvku model Windows Forms DataGridView.

Viz také

Platí pro