我试图自动调整我的dgv的宽度和高度, 然而,它给我留下了宽阔的空间,有些不对。
这是我使用的代码:
int height = 0;
foreach (DataGridViewRow row in dgv.Rows)
{
height += row.Height;
}
height += dgv.ColumnHeadersHeight;
int width = 0;
foreach (DataGridViewColumn col in dgv.Columns)
{
width += col.Width;
}
width += dgv.RowHeadersWidth;
dgv.ClientSize = new Size(width + 2, height + 2);
答案 0 :(得分:0)
看看DataGridView.AutoSizeColumnsMode
。您也可以使用DataGridView.AutoResizeColumns();
强制调整大小。
您刚刚将所有列宽添加到一起,但是谁说列宽是所需的?
答案 1 :(得分:0)
通常ColumnHeadersHeightSizeMode
自己定义属性。
他们获得了AutoSize
属性,您可以将其设置为AutoSizeColumnsMode
。
使用DataGridView
,您甚至可以告诉ColumnHeader
哪个对象需要调整大小。 (例如AllCellsExceptHeader
,AllCells
,{{1}}。
您可以在属性窗口中轻松找到它们。无需编码。