我有一个datagridview,它被填充并以编程方式添加到winform中。
gridview中的列数可能差异很大,因此我想更改实际Gridview宽度的大小以适合列数。
有人可以建议怎么做吗?
感谢。
答案 0 :(得分:0)
也许我不理解它,但是你不能在每次添加列时修改网格的width属性吗?
DatagridView1.Width += 100; //estimated width of the column
编辑: 好的,所以你添加将它绑定到数据源的列。但是后来,你做了类似的事情:
foreach (DataGridViewColumn col in DataGridView1.Columns)
{
//do things
}
其他解决方案可以重绘您的表单,并将网格放在面板中,并将网格的dock属性设置为Fill。网格将使用所有可用空间,如果需要更多空间,则会显示滚动条。
答案 1 :(得分:0)
除了Jonathan所说的,如果你想让它自动调整大小,你可以为每一列设置FillWeight属性:
buttonTest.Width = 80; //this is not resizable because we might have rendering problems
buttonTest.AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
DescriptionColumn.FillWeight = 40; //for a text column, we can set it to be resized