公司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>}
}