c# – 将dataGridView的大小适合于行和列的总大小

前端之家收集整理的这篇文章主要介绍了c# – 将dataGridView的大小适合于行和列的总大小前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想使dataGridView的大小适合列和行的总大小.关于总高度,我设法使其适合列的高度:
const int datagridLines = 30;
s.Height = dataGridView2.Columns[0].HeaderCell.Size.Height;
for (byte i = 0; i < datagridLines; i++)
{
  dataGridView2.Rows.Add();
  s.Height += dataGridView2.Rows[i].Height;
}
dataGridView2.ClientSize = s;

我尝试了一些东西也适合宽度,但没有运气.有什么建议么?

谢谢.

解决方法

这应该工作:
int height = 0;
foreach (DataGridViewRow row in dataGridView1.Rows) {
    height += row.Height;
}
height += dataGridView1.ColumnHeadersHeight;

int width = 0;
foreach (DataGridViewColumn col in dataGridView1.Columns) {
    width += col.Width;
}
width += dataGridView1.RowHeadersWidth;

dataGridView1.ClientSize = new Size(width + 2,height + 2);

宽度和高度值的2是用于考虑DataGridView内部元素宽度的软硬件因子.我记得看到代码可以让你得到这个值,没有硬编码,但我现在找不到.

猜你在找的C#相关文章