2009-06-18 69 views
1

我有一个Silverlight 2应用程序,带有Datagrid和一个按钮,通过返回到服务器将其导出到Excel。Silverlight将Datagrid导出到Excel(不包括往返)

我可以创建一个代表数据网格的HTML字符串。我想将这个字符串附加到一个html元素,设置MIME类型= application/vnd.ms-excel,并有一个提示,显示询问我是否打开或保存xls文件。

毕竟如果ASP可以做到这一点...

<% The main feature of this technique is that %> 
<% you have to change Content type to ms-excel.%> 

Response.ContentType = "application/vnd.ms-excel" 
<TABLE> 
<TR><TD>2</TD></TR> 
<TR><TD>3</TD></TR> 
<TR><TD>=SUM(A1:A2)</TD></TR> 
</TABLE> 

...好像我应该能够做同样的事情,从Silverlight内,将其推到HTML DOM。

任何建议非常感谢!

回答

1

您可以随时将数据网格的内容复制到使用javascript的用户剪贴板中(只需创建一个“复制到剪贴板”按钮),然后允许它们粘贴到自己的电子表格中(只需为客户端做到这一点,他们对解决方案非常满意。)如果需要,我可以发布代码。

1

不会发生这种情况。您将需要让浏览器从SL发布的服务器获取某些内容。

当浏览器将文档创建为HTML DOM时,您只能将HTML写入浏览器托管的文档。因此,您无法说服浏览器您正在编写的文本流是另一种文档类型,如Excel电子表格。