spread for silverlight 复制sheet有什么好的方法
功能上需要实现对用spread加载的一个Exl文件该文件里有一个现有的Sheet页作被复制对象,先要实现多次Sheet页复制功能(样式、数值都要被复制)有什么好方法么?我尝试用Save/OpenXml方式实现,序列化的速度很好但是反序列化的时间太长了一个页复制需要30S,能否有方法提高效率? 回复 1楼zysfaithboy的帖子
你好,
请问导出的 Sheet 有多少数据量,最好能够把 Excel 上传到论坛我们看下是否有优化方法。
如果是公式或者格式过多,可能没有什么更好的办法来优化。
谢谢 回复 2楼iceman的帖子
好的 文件里面是一个测试表 进行复制的代码如下
public Worksheet CopySheet (Worksheet sheet,string newName)
{
Worksheet newSheet = null;
if (sheet != null)
{
MemoryStream ms = new MemoryStream();
XmlWriter writer = XmlWriter.Create(ms);
sheet.SaveXml(writer);
writer.Close();
ms.Position = 0;
XmlReader reader = XmlReader.Create(ms);
newSheet = new Worksheet(newName);
newSheet.OpenXml(reader);
reader.Close();
}
return newSheet;
} 回复 3楼zysfaithboy的帖子
感谢反馈,调查后给出进一步结果。 回复 4楼iceman的帖子
使用你提供的 Excel 我制作了一个测试Demo,没有重现问题,加载时间1~2s。请下载测试看能否重现问题:
VS2013+Spread 4.0.20132.342 + C#:
谢谢 回复 5楼iceman的帖子
感谢 问题已经解决版本问题 之前的太老了 引用V4版本后复制200个在3S左右达到预期效果 回复 6楼zysfaithboy的帖子
好的,感谢您的反馈。
页:
[1]