C#Datagridview以编程方式调整大小

时间:2010-11-05 11:05:34

标签: c#

我有一个datagridview,它被填充并以编程方式添加到winform中。

gridview中的列数可能差异很大,因此我想更改实际Gridview宽度的大小以适合列数。

有人可以建议怎么做吗?

感谢。

2 个答案:

答案 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