內置數據導出的前提條件
使用DevExpress.Web.ASPxGridView.Export.ASPxGridViewExporter實現數據導出。注意一定要將該控件放在頁面上才可。
使用該控件必須引入以下dll文件:
DevExpress.Utils.v9.1.dll
DevExpress.Web.ASPxGridView.v9.1.Export.dll
DevExpress.XtraPrinting.v9.1.dll
在Asp.Net頁面注冊該控件的代碼:
Namespace="DevExpress.Web.ASPxGridView.Export" TagPrefix="dxwgve" %>
<%@ Register Assembly="DevExpress.XtraPrinting.v9.1, Version=9.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"
Namespace="DevExpress.XtraPrinting" TagPrefix="dxwgve" %>
在Asp.net頁面控件聲明:
</dxwgve:ASPxGridViewExporter>
支持的數據導出類型
ASPxGridViewExporter支持導出到Csv、Pdf、Rtf、Excel文件,所對應的方法分別為:
1,WriteCsv(WriteCsvResponse)
2,WritePdf(WritePdfResponse)
3,WriteRtf(WriteRtfResponse)
4,WriteXls(WriteXlsResponse)
在數據導出時通過給ASPxGridViewExporter的GridViewID指定一個AspxGridView控件ID。
例:將所有記錄導出到Excel文件
ASPxGridViewExporter1.WriteXlsToResponse("Sys_Log.xls");//導出到Excel
例:將所選記錄導出到Pdf文件
ASPxGridViewExporter1. ExportedRowType = GridViewExportedRowType.Selected;
ASPxGridViewExporter1.WriteXlsxToResponse(new XlsxExportOptionsEx() { ExportType = ExportType.WYSIWYG });//本句非常重要,否則導不出
ASPxGridViewExporter重要屬性:
| 屬性名 |
數據類型 |
說明 |
| FileName |
String |
導出文件名稱。可讀寫。 |
| GridView |
AspxGridView |
AspxGridView控件實例。只讀。 |
| GridViewID |
String |
需要導出數據的AspxGridView控件ID。可讀寫。 |
| ExportedRowType |
GridViewExportedRowType(枚舉) |
導出行范圍。可讀寫。取值范圍:All,所有行;Selected,選中行。 |
主從ASPxGridView數據導出
在導出有主從關系的AspxGridView時可設置導出模式(SettingsDetail.ExportMode)
取值范圍:None(不導出子AspxGridView數據)
Expanded(已展開的子AspxGridView數據)
All(所有子AspxGridView數據)。
在導出的文件中主數據下包含了子數據。
例:
//子AspxGridView導出模式
ASPxGridViewExporter1.GridViewID = "MasterGrid";
ASPxGridViewExporter1.WriteXlsToResponse("Task.xls");//導出到Excel
導出到Pdf時中文亂碼問題的解決
有時候,我們在導出pdf文檔時會發現導出來的漢字都成了亂碼,這時候可以通過更改ASPxGridViewExporter的Styles.Default.Font.Name來處理中文亂碼問題。有中文符號的字體可以正確顯示中文。
