[原创]FineUI秘密花园(二十二) — 表格之导出Excel文件

本文详细介绍了如何将Asp.Net的GridView和FineUI的Grid控件导出为Excel文件,包括处理CheckBox、图片路径以及优化表格格式。通过示例代码展示了导出过程,最后展示了优化后的Excel效果。
摘要由CSDN通过智能技术生成

将表格内容导出为Excel文件是实际项目中的常见需求,怎么来实现呢?

 

导出文件的格式

首先我们需要理解的一点是,导出的文件其实一个HTML片段,只不过Excel会按照自身的格式自动格式化而已。

来看一个导出文件的典型示例:

   1:  <table border="1">
   2:   <tr><th>姓名</th><th>性别</th></tr>
   3:   <tr><th>张三</th><th></th></tr>
   4:   <tr><th>李四</th><th></th></tr>
   5:   <tr><th>春花</th><th></th></tr>
   6:  </table>

将此文件后缀改成xls,并用Excel打开后可见:

image

 

 

将GridView导出为Excel文件

首先来看下如何将Asp.Net的GridView导出为Excel文件,网上已经有很好的参考资料,这是博客园中的中文译本

概括说来有如下几个技巧:

  1. 必须重载VerifyRenderingInServerForm函数,函数体留空,否则会报错;
  2. 如果GridView中包含CheckBox,LinkButton等控件或者分页时,需要设置页面属性EnableEventValidation="false",否则会报错;
  3. 可以在导出数据之前将GridView中的CheckBox等控件用Literal控件代替。

 

下面来看一个示例,示例的ASPX标签结构如下:

   1:  <asp:GridView ID="GridView1" Width="900px" DataKeyNames="Id,Name" AutoGenerateColumns="False"
   2:      runat="server">
   3:      <Columns>
   4:          <asp:TemplateField>
   5:              <ItemTemplate>
   6:                  <asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
   7:              </ItemTemplate>
   8:          </asp:TemplateField>
   9:          <asp:BoundField DataField="Name" HeaderText="姓名" />
  10:          <asp:TemplateField HeaderText="性别">
  11:              <ItemTemplate>
  12:                  <asp:Label ID="Label2" runat="server" Text='<%# GetGender(Eval("Gender")) %>'></asp:Label>
  13:              </ItemTemplate>
  14:          </asp:TemplateField>
  15:          <asp:BoundField DataField="EntranceYear" HeaderText="入学年份" />
  16:          <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值