您的位置:首页 > 其它

DataGridView 列宽和行高自动调整的设定

2015-08-04 15:33 525 查看
1、AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格。

2、AllCellsExceptHeader 调整列宽,以适合该列中的所有单元格的内容,不包括标题单元格。

3、ColumnHeader 调整列宽,以适合列标题单元格的内容。

4、DisplayedCells 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,包括标题单元格。

5、DisplayedCellsExceptHeader 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,不包括标题单元格。

6、Fill 调整列宽,使所有列的宽度正好填充控件的显示区域,只需要水平滚动保证列宽在DataGridViewColumn.MinimumWidth 属性值以上。相对列宽由相对 DataGridViewColumn.FillWeight 属性值决定。

7、None 列宽不会自动调整。

8、NotSet 列的大小调整行为从 DataGridView.AutoSizeColumnsMode 属性继承。

使用方法举例:

<p><span class="pln"> </span><span class="kwd">this</span><span class="pun">.</span><span class="typ">IssuesDataGridView</span><span class="pun">.</span><span class="typ">AutoSizeColumnsMode</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">Windows</span><span class="pun">.</span><span class="typ">Forms</span><span class="pun">.</span><span class="typ">DataGridViewAutoSizeColumnsMode</span><span class="pun">.</span><span class="typ">Fill</span><span class="pun">;</span></p>


***************************************************************************************法二

DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;


DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;


DataGridView1.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;


// 设定列头的宽度可以自由调整

DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;


// 设定行头的宽度可以自由调整

DataGridView1.RowHeadersWidthSizeMode =
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders;


4) 随时自动调整

a, 临时的,让列宽自动调整,这和指定AutoSizeColumnsMode属性一样。

[C#]

// 让 DataGridView1 的所有列宽自动调整一下。

DataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);


// 让
DataGridView1 的第一列的列宽自动调整一下。

DataGridView1.AutoResizeColumn(0, DataGridViewAutoSizeColumnMode.AllCells);


上面调用的 AutoResizeColumns 和 AutoResizeColumn
当指定的是DataGridViewAutoSizeColumnMode.AllCells 的时候, 参数可以省略。即:

DataGridView1.AutoResizeColumn(0) 和 DataGridView1.AutoResizeColumns()

b,临时的,让行高自动调整

[C#]

// 让 DataGridView1 的所有行高自动调整一下。

DataGridView1.AutoResizeRows(DataGridViewAutoSizeRowsMode.AllCells);


//让
DataGridView1 的第一行的行高自动调整一下。

DataGridView1.AutoResizeRow(0, DataGridViewAutoSizeRowMode.AllCells);


上面调用的 AutoResizeRows 和 AutoResizeRow 当指定的是DataGridViewAutoSizeRowMode.AllCells
的时候, 参数可以省略。即:DataGridView1.AutoResizeRow(0)
和 DataGridView1.AutoResizeRows()

c,临时的,让行头和列头自动调整

关于性能:

通过 AutoSizeColumnsMode 或者 AutoSizeRowsMode 属性所指定的单元格进行自动调整时,如果调整次数过于多那么将可能导致性能下降,尤其是在行和列数比较多的情况下。在这时用 DisplayedCells 代替 AllCells 能减少非所见的单元格的调整,从而提高性能。

[C#]

// 列头高度自动调整

DataGridView1.AutoResizeColumnHeadersHeight();


// 行头宽度自动调整

DataGridView1.AutoResizeRowHeadersWidth(
DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: