找回密码
 立即注册

QQ登录

只需一步,快速开始

ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-3-15 14:47:00
11#

回复 10# sam 的帖子

你好,sam

我们正在查看你的测试程序,稍后会给你回复调查结果。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-3-15 16:06:00
12#
从测试结果来看,在换页的时候,的却需要等待很长时间,一方面是数据传输,另一方面是数据在客户端显示出来需要较长时间,现在能提供的解决方案还是对数据进行分页处理,
1、减少每页显示的数据量,将500*100改成200*100甚至100*100
2、使用Spread带的按需加载功能,主要是设置 AllowLoadOnDemand 等属性,详细使用方法请参考Spread帮助文档中的【Allowing Load on Demand】章节
  1. FpSpread1.Sheets[0].RowCount = 40;
  2. FpSpread1.Sheets[0].AllowLoadOnDemand = True;
  3. FpSpread1.Sheets(0).PageSize = 40;
  4. FpSpread1.Sheets[0].LoadInitRowCount = 10;
  5. FpSpread1.Sheets[0].LoadRowIncrement = 10;
  6. long i;
  7. for (i = 1; i <= 20; i++)
  8. {
  9. FpSpread1.Sheets[0].Cells[i, 0].Value = i;
  10. }

复制代码
3、使用Spread的虚拟分页功能,主要是设置AllowVirtualScrollPaging 属性,详细使用方法请参考Spread帮助文档中的【AllowVirtualScrollPaging 】
  1. FpSpread1.Sheets[0].AllowVirtualScrollPaging = true;
复制代码
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-3-15 19:50:00
13#
嗨,Dof
以上方法,即:按需载入和虚拟分页我都试过。其实其使用后速度也不会提高。在操作过程中也会有很大的延迟。
我记得好象是不是有个叫状态视图的机制可以提高性能。
我这边的客户需求就是需要在一个页面中做数据操作,尽量不要分页。
您看是否还有其他方面的优化方案。

谢谢!
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-3-15 19:52:00
14#
特别是在翻页和数据操作(即:插入或新增一行)会特别慢。要等待很久的。这种速度客户会有很大抱怨的。
请知悉。看能否有办法解决?谢谢!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-3-16 10:46:00
15#
sam 你好

我们正在使用你的Demo进行调查,由于需求中有一些是不可回避的问题(数据量500*100),我们会尽量寻找相应的方法来提升操作速度,有新的进展会立即联系你,请稍等...
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-3-16 11:54:00
16#
好的。非常感谢!
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-3-16 14:48:00
17#
Hi  Dof
能否在点击下一页时,能弹出一个等待的图标,这样,可能可以提高用户体验。看能否实现。就在我上面的例子中实现。谢谢!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-3-16 15:15:00
18#

回复 17# sam 的帖子

好的,我会试着这换页时显示一个等待信息。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-3-16 18:31:00
19#

回复 17# sam 的帖子

sam 你好,
我们通过自定义 Next Page 按钮实现,实现方法如下

1.在 Render 中抓取Next button ,并且添加前台方法。
  1.         protected override void Render(HtmlTextWriter writer)
  2.         {
  3.             WebControl pageNextBut = this.FpSpread1.FindControl("Next") as WebControl;
  4.             pageNextBut.Attributes.Add("onclick", "OnCallStart()");
  5.             base.Render(writer);
  6.         }
复制代码

2.在 OnCallStart 方法中执行 FpSpread1.Next(),这样我们就可以抓到页面加载过程。
  1.         function OnCallStart() {
  2.             alert("start");
  3.             FpSpread1.Next();
  4.             alert("stop");
  5.             return false;
  6.         }
复制代码
3.Pre button 同理。
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-3-19 08:45:00
20#
嗨,Dof:

以上性能問題,現在有沒有較好的解決方案?
主要是:
1,能在500*100的一頁中能快速編輯,不能感覺到很卡的現象.
2,在翻頁的過程,也看能否提高翻頁速度
3,在翻頁的等待過程中,能否系統可以Show一張等待的gif圖片,翻頁完成后,圖片自動消失.
我這邊的需求較緊急,看能否盡快解決回復。謝謝!
麻煩您們了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部