找回密码
 立即注册

QQ登录

只需一步,快速开始

安心海叶

中级会员

66

主题

255

帖子

717

积分

中级会员

积分
717

活字格认证微信认证勋章

安心海叶
中级会员   /  发表于:2017-6-8 17:02  /   查看:6538  /  回复:15
您好!

覆写了C1DataGrid的MeasureOverride方法,调用C1DataGrid.Measure(constraint),当绑定的数据量较大时,速度运行非常慢,求教解决方案?



protected override Size MeasureOverride(Size constraint)
{

}


15 个回复

正序浏览
JeffryLI
葡萄城公司职员   /  发表于:2017-6-21 15:38:51
16#
不客气,能帮您,很荣幸。

评分

参与人数 1满意度 +5 收起 理由
安心海叶 + 5 很给力!

查看全部评分

请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
安心海叶
中级会员   /  发表于:2017-6-21 15:23:33
15#
JeffryLI 发表于 2017-6-16 10:10
哦,原来是这样啊,那就需要你们这块做好优化了,后面有问题欢迎提问。

好的,O(∩_∩)O谢谢
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-16 10:10:20
14#
哦,原来是这样啊,那就需要你们这块做好优化了,后面有问题欢迎提问。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
安心海叶
中级会员   /  发表于:2017-6-16 10:05:50
13#
JeffryLI 发表于 2017-6-14 15:36
您好,我们按照您的方法尝试了下,性能还是很好的,相关的代码如图:

我们的数据量是100w条,也是xml的 ...

非常感谢您,亲自帮我做测试,谢谢~

这个时间做过统计,反序列化时间只有0.05s左右,还是因为如果几个DataGrid一起,大数据量,时间就慢了。

现在在实现打印好几页报告,里面有几个数据量大的DataGrid,视觉停留比较久。

回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-14 15:36:09
12#
您好,我们按照您的方法尝试了下,性能还是很好的,相关的代码如图:

我们的数据量是100w条,也是xml的数据在反序列化后,measure的时间也还可以。我估计你慢的环节可能出现在反序列化上,希望能帮到您。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-13 14:14:16
11#
没事,这块我们需要重新模拟一下你的场景,需要些时间,等我们这块有结果了我及时给您答复。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
安心海叶
中级会员   /  发表于:2017-6-13 12:28:16
10#
本帖最后由 安心海叶 于 2017-6-13 13:53 编辑
JeffryLI 发表于 2017-6-13 11:32
您好,我理解您的意思是有一个XML数据,我要反序列化成实体类然后绑定到C1DataGrid,然后我还有一个自定义 ...

对的,对不起,暂时还给不到你demo
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-13 11:32:45
9#
本帖最后由 JeffryLI 于 2017-6-13 11:41 编辑

您好,我理解您的意思是有一个XML数据,我要反序列化成实体类然后绑定到C1DataGrid,然后我还有一个自定义的Canvas,需要把C1DataGrid添加到这个Canvas里面方便拖拽和resize,这个时候呢因为要获取C1DataGrid的绘制尺寸,所以需要override measure方法,我发现他比较慢,我这样理解对吗?
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
安心海叶
中级会员   /  发表于:2017-6-13 09:33:20
8#
JeffryLI 发表于 2017-6-12 18:02
您好,您的序列化C1DataGird指是什么?是序列化xml还是json?为什么会使用canvas,我们的datagrid,每个cell ...

序列化xml为C1DataGrid,然后Add到DesignerCanvas,以方便Drag和Resize。在添加到DesignerCanvas后默认调用MeasureOverride。此时速度较慢
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部