1)
设定行高和列宽自动调整
[VB.NET]
'
设定包括
Header
和所有单元格的列宽自动调整
DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
'
设定包括
Header
和所有单元格的行高自动调整
DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
[C#]
//
设定包括
Header
和所有单元格的列宽自动调整
DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
//
设定包括
Header
和所有单元格的行高自动调整
DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
AutoSizeColumnsMode
属性的设定值枚举请参照
msdn
的
DataGridViewAutoSizeRowsMode
说明。
2
)指定列或行自动调整
[VB.NET]
'
第一列自动调整
DataGridView1.Columns(0).AutoSizeMode = _
DataGridViewAutoSizeColumnMode.DisplayedCells
[C#]
//
第一列自动调整
DataGridView1.Columns[0].AutoSizeMode =
DataGridViewAutoSizeColumnMode.DisplayedCells;
AutoSizeMode
设定为
NotSet
时,
默认继承的是
DataGridView.AutoSizeColumnsMode
属性。
3)
设定列头的高度和行头的宽度自动调整
[VB.NET]
'
设定列头的宽度可以自由调整
DataGridView1.ColumnHeadersHeightSizeMode = _
DataGridViewColumnHeadersHeightSizeMode.AutoSize
'
设定行头的宽度可以自由调整
DataGridView1.RowHeadersWidthSizeMode = _
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders
[C#]
//
设定列头的宽度可以自由调整
DataGridView1.ColumnHeadersHeightSizeMode =
DataGridViewColumnHeadersHeightSizeMode.AutoSize;
//
设定行头的宽度可以自由调整
DataGridView1.RowHeadersWidthSizeMode =
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders;
4
)
随时自动调整
a
,
临时的,让列宽自动调整,这和指定
AutoSizeColumnsMode
属性一样。
[VB.NET]
'
让
DataGridView1
的所有列宽自动调整一下。
DataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
'
让
DataGridView1
的第一列的列宽自动调整一下。
DataGridView1.AutoResizeColumn(0, DataGridViewAutoSizeColumnMode.AllCells)
[C#]
//
让
DataGridView1
的所有列宽自动调整一下。
DataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
//
让
DataGridView1
的第一列的列宽自动调整一下。
DataGridView1.AutoResizeColumn(0, DataGridViewAutoSizeColumnMode.AllCells);
上面调用的
AutoResizeColumns
和
AutoResizeColumn
当指定的是
DataGridViewAutoSizeColumnMode.AllCells
的时候,
参数可以省略。即:
DataGridView1.AutoResizeColumn(0)
和
DataGridView1.AutoResizeColumns()
b
,临时的,让行高自动调整
[VB.NET]
'
让
DataGridView1
的所有行高自动调整一下。
DataGridView1.AutoResizeRows(DataGridViewAutoSizeRowsMode.AllCells)
'
让
DataGridView1
的第一行的行高自动调整一下。
DataGridView1.AutoResizeRow(0, DataGridViewAutoSizeRowMode.AllCells)
[C#]
//
让
DataGridView1
的所有行高自动调整一下。
DataGridView1.AutoResizeRows(DataGridViewAutoSizeRowsMode.AllCells);
//
让
DataGridView1
的第一行的行高自动调整一下。
DataGridView1.AutoResizeRow(0, DataGridViewAutoSizeRowMode.AllCells);
上面调用的
AutoResizeRows
和
AutoResizeRow
当指定的是
DataGridViewAutoSizeRowMode.AllCells
的时候,
参数可以省略。即:
DataGridView1.AutoResizeRow (0)
和
DataGridView1.AutoResizeRows()
c
,临时的,让行头和列头自动调整
[VB.NET]
'
列头高度自动调整
DataGridView1.AutoResizeColumnHeadersHeight()
'
行头宽度自动调整
DataGridView1.AutoResizeRowHeadersWidth( _
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders)
[C#]
//
列头高度自动调整
DataGridView1.AutoResizeColumnHeadersHeight();
//
行头宽度自动调整
DataGridView1.AutoResizeRowHeadersWidth(
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);
关于性能:
通过 AutoSizeColumnsMode 或者 AutoSizeRowsMode 属性所指定的单元格进行自动调整时,如果调整次数过于多那么将可能导致性能下降,尤其是在行和列数比较多的情况下。在这时用 DisplayedCells 代替 AllCells 能减少非所见的单元格的调整,从而提高性能。