3 回答
TA贡献1876条经验 获得超5个赞
这对我有用。
在设计器中将 AutoSizeColumnsMode 和 AutoSizeRowsMode 值从 None 设置为 AllCells。
TA贡献1866条经验 获得超5个赞
DataGridViewAutoSizeColumnsMode如果可能,您是否尝试过在设置源之前设置 ?
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
dataGridView1.DataSource = SourceList; // Your Collection here
dataGridView1.AutoResizeRows();
}
TA贡献1799条经验 获得超6个赞
很抱歉,我花了一年多的时间才看到这篇文章......
这是我为使其“自动”所做的工作。
private void AutoResizeGrid()
{
if (dataGridView.Columns.Count < 1) return;
dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.DisplayedCells);
dataGridView.AutoResizeRows(DataGridViewAutoSizeRowsMode.DisplayedCells);
}
private void MatrixDataGridView_ClientSizeChanged(object sender, EventArgs e)
{
if (!this.Visible) return;
AutoResizeGrid();
}
private void MatrixDataGridView_Scroll(object sender, ScrollEventArgs e)
{
if (!this.Visible) return;
AutoResizeGrid();
}
在添加此代码之前,我转到设计器并将“AutoSizeColumnsMode”和“AutoSizeRowsMode”都设置为“DisplayedCells”。当网格第一次接收数据时,这会导致自动化。当发生调整大小或滚动事件时,上面的代码会导致自动化。
- 3 回答
- 0 关注
- 206 浏览
添加回答
举报