【发布时间】:2011-07-06 13:38:53
【问题描述】:
我们有一个包含 2048 列的 DataGridView。我们必须为用户提供一种方法来增加和减少 DataGridView 中所有列的宽度。
目前,我们在按钮单击处理程序中执行以下操作:
for (int i = 0; i < dgv.Columns.Count; i++)
{
dgv.Columns[i].Width += 5;
}
但这需要一段时间! (更具体地说,大约 2 秒)。 (注意:我们将 ColumnHeadersHeightSizeMode 属性设置为 DataGridViewColumnHeadersHeightSizeMode.DisableResizing 以获得一些性能,但这并没有削减它)
有没有更快的方法来实现列的大小调整?
【问题讨论】:
-
2048 列?你可以重新考虑那个 ui 吗?
-
我希望可以。我确实需要 2048 列(== 我的客户说他需要它)。不过,我愿意接受有关其他实现该功能的方法的建议。也许 dataGridView 不是最好的方法。
-
看看这篇文章:stackoverflow.com/questions/587508/… 不确定它是否能解决你的问题,但那里的想法可能会有所帮助,尤其是双缓冲。
标签: performance datagridview datagridviewcolumn