DataGridView.AutoResizeColumn 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
调整指定列的宽度以适应其单元格的内容。
重载
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 的有效范围内。
示例
下面的代码示例使用此方法使列宽足以容纳新的单元格值。 本示例是“如何:操作 dataGridView 控件”中Windows 窗体行的较大示例的一部分。
// 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 属性。
有关编程大小调整的详细信息,请参阅 Windows 窗体 dataGridView 控件中的大小调整选项。
另请参阅
适用于
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
例外
autoSizeColumnMode
具有值 ColumnHeader,且 ColumnHeadersVisible 为 false
。
columnIndex
不在 0 到列数减 1 的有效范围内。
autoSizeColumnMode
不是有效的 DataGridViewAutoSizeColumnMode 值。
示例
下面的代码示例使用此方法使列宽足以容纳新的单元格值。 本示例是“如何:操作 dataGridView 控件”中Windows 窗体行的较大示例的一部分。
// 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 属性。
通过此重载,可以指定一种大小调整模式,该模式根据一组有限单元格中的值(例如仅显示行中的值)计算新宽度。 当控件包含大量行时,这会提高性能。
有关编程大小调整的详细信息,请参阅 Windows 窗体 dataGridView 控件中的大小调整选项。
另请参阅
适用于
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
- fixedHeight
- Boolean
如果要基于当前的行高计算新宽度,则为 true
;如果要在行高也进行调整的假定条件下计算宽度,则为 false
。
例外
autoSizeColumnMode
具有值 ColumnHeader,且 ColumnHeadersVisible 为 false
。
columnIndex
不在 0 到列数减 1 的有效范围内。
autoSizeColumnMode
不是有效的 DataGridViewAutoSizeColumnMode 值。
注解
如果要控制列大小调整时,此方法非常有用。 每个方法调用仅调整一次列宽;如果列的内容稍后发生更改,则列不会自动调整。 若要调整所有列的大小,请使用 AutoResizeColumns 该方法。 若要设置列以在内容发生更改时自动调整大小,请使用 AutoSizeColumnsMode 属性或列 AutoSizeMode 属性。
通过此重载,可以指定一种大小调整模式,该模式根据一组有限单元格中的值(例如仅显示行中的值)计算新宽度。 当控件包含大量行时,这会提高性能。
此重载受到保护,旨在使你能够在派生 DataGridView 类中实现理想的单元格高度与宽度比率。 false
如果是fixedHeight
,将计算列宽,并期望接下来调用AutoResizeRow或AutoResizeRows方法。
有关编程大小调整的详细信息,请参阅 Windows 窗体 dataGridView 控件中的大小调整选项。