找回密码
 立即注册

QQ登录

只需一步,快速开始

安心海叶

中级会员

66

主题

255

帖子

717

积分

中级会员

积分
717

活字格认证微信认证勋章

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

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



protected override Size MeasureOverride(Size constraint)
{

}


15 个回复

倒序浏览
JeffryLI
葡萄城公司职员   /  发表于:2017-6-8 18:40:15
沙发
您好,主要是因为重写了,具体原因还不明确,之前没有出现过类似的问题,方便给我们一个重现的demo,以便我们能帮您查看原因。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
安心海叶
中级会员   /  发表于:2017-6-9 09:55:24
板凳
JeffryLI 发表于 2017-6-8 18:40
您好,主要是因为重写了,具体原因还不明确,之前没有出现过类似的问题,方便给我们一个重现的demo,以便我 ...

帮我看看,就是你们的代码,运行出来需要2s

本帖子中包含更多资源

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

x
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-9 10:48:20
地板
你好,demo收到,验证后给你回复!
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-12 15:06:07
5#
您好,这个我们这边没有理解您的需求是什么,为什么在重写MeasureOverride,MeasureOverride用来测量子元素,返回子元素期待的大小,如果您想控制子元素绘制的大小也应该用ArrangeOverride才对 ,希望您能说的具体些,这样才能帮到您。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
安心海叶
中级会员   /  发表于:2017-6-12 15:47:38
6#
JeffryLI 发表于 2017-6-12 15:06
您好,这个我们这边没有理解您的需求是什么,为什么在重写MeasureOverride,MeasureOverride用来测量子元素 ...

自定义了一个控件Canvas,不管需要不需要重写,当C1DataGrid数据量较大时,序列化C1DataGrid添加到Canvas里,显示速度很慢,视觉不能接受
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-6-12 18:02:13
7#
您好,您的序列化C1DataGird指是什么?是序列化xml还是json?为什么会使用canvas,我们的datagrid,每个cell是一个border,canvs一般用来绘图用的,这块我不太理解您的意思,或者您方便给我提供一个demo。我帮您看看,希望能尽快帮助您解决问题。
请点击评分,对我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。此时速度较慢
回复 使用道具 举报
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 12:28:16
10#
本帖最后由 安心海叶 于 2017-6-13 13:53 编辑
JeffryLI 发表于 2017-6-13 11:32
您好,我理解您的意思是有一个XML数据,我要反序列化成实体类然后绑定到C1DataGrid,然后我还有一个自定义 ...

对的,对不起,暂时还给不到你demo
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部