我的 Windows 应用程序窗体上有一个 DataGridView 控件。此 DataGridView 是基于纯文本文件(由用户在运行时指定)填充的。因此,列数和行数是动态计算的。现在一切都按预期工作正常,唯一的问题是我的 DataGridView 花了很多时间来加载数据,有什么方法可以优化 DataGridView 的性能吗?
提示:通常 datagridview 包含 1024 列和大约 100 行。
以下是填充我的 DataGridView 的代码
dataGridView1.ColumnCount = nColumnCount;
for (int i = 0; i < CurrPageLines.Length; i++)
{
string sCurrLinecontents = CurrPageLines[i];
int n = dataGridView1.Rows.Add();
for (int j = 0; j < /*nColumnCount*/sCurrLinecontents.Length; j++)
{
dataGridView1.Rows[n].Cells[j].Value = sCurrLinecontents[j];
}
}
MSDN 上有一篇文章如何使用datagridview的虚拟模式 http://msdn.microsoft.com/en-us/library/ms171622.aspx。它甚至还带有一个很好的演练示例 http://msdn.microsoft.com/en-us/library/15a31akc.aspx。尽管它似乎更针对大量行而不是大量列,但它可能仍然有用。
Update:如果您在加载数据时遇到延迟,您可以通过创建一个DataTable
or a BindingList
从文本文件中获取,然后将其绑定到视图。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)