公司HIS软件的医保接口。下载下来的药品目录有17万条。数据展示到窗体的时候非常慢。在网上搜各种解决方法,了解到datagridview有虚模式。于是,考虑用虚模式来显示数据。
先在窗体的load事件中,设置datagridview的virtualmode为true。
<pre name="code" class="csharp">this.dgv_zl_old.VirtualMode = true;
this.dgv_fwss_old.VirtualMode = true;
this.dgv_bz_old.VirtualMode = true;
this.dgv_bzde_old.VirtualMode = true;
this.dgv_yp_old.VirtualMode = true;然后再datagridview的cellvalueneeded事件中进行赋值。DataRow dr = data.Rows[e.RowIndex];
for (int i = 0; i < data.Columns.Count; i++)
{
<span style="white-space:pre"> </span>if (e.ColumnIndex == i)
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>e.Value = dr[i];
<span style="white-space:pre"> </span>}
}
本文介绍了一种使用DataGridView虚模式加速大量数据展示的方法。面对17万条药品目录数据加载缓慢的问题,通过启用DataGridView的虚拟模式并利用cellvalueneeded事件进行数据填充,显著提高了数据展示速度。

963

被折叠的 条评论
为什么被折叠?



