首页 新闻 搜索 专区 学院

DataGridView的快速填充问题

0
悬赏园豆:40 [已关闭问题] 关闭于 2010-06-22 09:28

当用DataSet直接填充时,速度很快,但如果自己一行行的DataGridViewRow插入,就很慢。
请问是为什么?

问题补充: 或者是微软怎么做的,用DataSet填充时是不是不是一行一行插入的? 看来是个高难问题:(
daoluo的主页 daoluo | 初学一级 | 园豆:160
提问于:2010-06-07 11:36
< >
分享
所有回答(2)
0

dataset 方式应该内部用了 BindingManagerBase 机制,这个会使DG的数据和数据源同步更新,UI整体刷新;

一行一行插入,需要对数据源每一条遍历,重画单元格数据;

 

  CurrencyManager manager = this.owner.BindingContext[newDataSource] as CurrencyManager;
        if (manager == null)
        {
            return false;
        }
        PropertyDescriptorCollection itemProperties = manager.GetItemProperties();
        if ((this.dataMember.Length != 0) && (itemProperties[this.dataMember] != null))
        {
            return false;
        }

winzheng | 园豆:8797 (大侠五级) | 2010-06-08 13:44
非常感谢你的回答,感觉有戏:) 如果我想模仿这种做法,应该怎么做?如果我的数据源是List应该怎么做?
支持(0) 反对(0) daoluo | 园豆:160 (初学一级) | 2010-06-09 10:51
0

同上

云锋 | 园豆:270 (菜鸟二级) | 2010-06-09 21:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册