找回密码
 立即注册

QQ登录

只需一步,快速开始

zyrf2011

注册会员

12

主题

47

帖子

105

积分

注册会员

积分
105

活字格认证

zyrf2011
注册会员   /  发表于:2012-7-18 12:58  /   查看:5747  /  回复:4
版主您好:
    我在使用spread过程中遇到这样一个问题,填充数据的时候非常慢,填充了50行6列这样的数据非常慢,不是用绑定的方法,使用一个单元格一个单元格写数据的。
           for (int i = 0; i < 50; i++)
                {
                    for (int j = 0; j < 10; j++)
                    {
                        sheetView.Cells[i, j].Text = ds.Tables[0].Rows[j].ToString();
                    }                    
                }
请问是什么原因呢?有好的解决方法吗?
另外,可不可以从某一行开始绑定dataset数据

4 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-7-18 16:57:00
沙发
回复 1楼zyrf2011的帖子

zyrf2011 你好,
50*10 的数据量不大,不知道楼主的数据库结构如何?
在Web系统中数据传输时影响性能的一方面,同时从你代码来开,你使用循环给单元格的Text属性赋值,在实际中如果频繁访问Text属性会损失一些性能,你可以通过访问Value来赋值,性能会更好:

  1. sheetView.Cells[i, j].Value= ds.Tables[0].Rows[j].ToString();
复制代码
回复 使用道具 举报
zyrf2011
注册会员   /  发表于:2012-7-20 14:49:00
板凳
iceman 感谢您的解答,我试试看。
回复 使用道具 举报
zyrf2011
注册会员   /  发表于:2012-7-20 14:54:00
地板
我昨天,把这些都改成绑定DataSet了,不慢了。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-7-20 15:18:00
5#
回复 4楼zyrf2011的帖子

好的。不客气
感谢 zyrf2011 的反馈。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部