2009-06-18 67 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電子表格。