這次坎尼用 NPOI 製作匯出用的 WebUserControl
如果以後有相同需求,不介意就直接拿去用吧 :D
I. 實作過程
首先,建立一個 WebUserControl在畫面上加入按鈕,用來觸發匯出事件
接著建立兩個屬性:TargetGridViewID、SheetName
TargetGridViewID 用來指定要匯出的 GridView
SheetName 則是匯出的試算表名稱
進入按鈕事件,這邊唯一要做的事,就是去找引用頁面的 GridView
找到之後丟給 ExportToFile 這個 method 就沒事了
這邊可參考 NPOI 建立試算表的方法,不再多提
要注意的就是抓取 GridView 欄位數時,不用要 Columns.Count
而是改用 HeaderRow.Cell.Count 大功告成,其他部分的 Code 有興趣的話可以到這邊下載
II. 測試
建立一個測試頁面,把剛做好熱騰騰的 WebUserControl 放上去接著再加入 GridView 及設定其繫結事件
設定 UserControl 的 TargetGridViewID 及 SheetName 屬性 執行測試頁面,點下匯出之後即會把資料轉換成試算表
怎樣,是不是很簡單呢?
III. 小結
這次只陽春地做出了匯出功能使用上也限制了 GridView 不能啟動分頁
如果要加入自定樣式或是分頁也可以匯出的功能
可將 Source Code下載回去自行修改
坎尼有空再來擴充這個 UserControl 的功能 : )
2011/02/11 修改:User Control 已有新版本,請前往 連結 下載新的檔案
沒有留言:
張貼留言