Excel截图:

将gridview的内容导出到Excel中去

 

前台Code:


    <tr>
        
<td style="width:100%">
            
<asp:GridView ID="gvEquipmentDeprec" runat="server"  Width ="100%" 
            AutoGenerateColumns
="False" AllowPaging="True" pagesize="20"
            PagerStyle-HorizontalAlign 
="Right">
            
<Columns>     
            
<asp:TemplateField HeaderText="No.">
                
<HeaderStyle HorizontalAlign="Center" />
                
<ItemStyle Width="30px"></ItemStyle>
            
</asp:TemplateField>
            
<asp:BoundField HeaderText="部门" DataField="DEPT_NAME" >
            
</asp:BoundField>
            
<asp:BoundField HeaderText="资产编号" DataField="EQUIPMENT_ID" >
            
</asp:BoundField>
            
<asp:BoundField HeaderText="品名" DataField="TYPE_NAME" >
            
</asp:BoundField>
            
<asp:BoundField HeaderText="原值" DataField="ORIGINAL_VAL" >
                
<ItemStyle HorizontalAlign="Right"></ItemStyle>
            
</asp:BoundField>
            
<asp:TemplateField HeaderText="累折">
                
<ItemStyle HorizontalAlign="Right"></ItemStyle>
            
</asp:TemplateField>
            
<asp:TemplateField HeaderText="净值">
                
<ItemStyle HorizontalAlign="Right"></ItemStyle>
            
</asp:TemplateField>
            
<asp:BoundField HeaderText="年限" DataField="AGE" >
            
</asp:BoundField>
            
<asp:TemplateField HeaderText="残值">
                
<ItemStyle HorizontalAlign="Right"></ItemStyle>
            
</asp:TemplateField>
            
<asp:TemplateField HeaderText="每台月折旧">
                
<ItemStyle HorizontalAlign="Right"></ItemStyle>
            
</asp:TemplateField>
            
<asp:BoundField HeaderText="购入时间" DataField="GET_TIME" >
            
</asp:BoundField>
            
<asp:TemplateField HeaderText="备注">
            
</asp:TemplateField>
            
</Columns>
            
<RowStyle CssClass="GridViewRowStyle"></RowStyle>
            
<SelectedRowStyle CssClass="GridViewSelectedRowStyle"></SelectedRowStyle>
            
<PagerStyle CssClass="GridViewPagerStyle" HorizontalAlign="Right"></PagerStyle>
            
<HeaderStyle CssClass="GridViewHeaderStyle"></HeaderStyle>
            
<AlternatingRowStyle CssClass="GridViewAlternatingRowStyle"></AlternatingRowStyle> 
            
</asp:GridView>
        
</td>
    
</tr>
</table>
<table class="OPERATION">
    
<tr>
        
<td><asp:Button ID="btnExcel" runat="server" Text=""></asp:Button></td>
    
</tr>
</table>

</asp:Content>

 

后台Code:

 


    '''GridView绑定
    
''' </summary>
    
''' <remarks></remarks>
    Public Sub GvBind()
        
'代码省略
    End Sub

''' <summary>
    
''' Excel
    
''' </summary>
    
''' <param name="FileType"></param>
    
''' <param name="FileName"></param>
    
''' <remarks></remarks>
    Private Sub Exports(ByVal FileType As StringByVal FileName As String)
        
Try
            Response.Charset 
= "GB2321"
            Response.ContentEncoding 
= System.Text.Encoding.UTF7
            Response.AppendHeader(
"Content-Disposition""attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString)
            Response.ContentType 
= FileType
            
Me.EnableViewState = False
            
Dim tw As New StringWriter
            
Dim hw As New HtmlTextWriter(tw)

            
'暂时把gvEquipmentDeprec变成不分页
            gvEquipmentDeprec.AllowPaging = False
            GvBind(
)

            gvEquipmentDeprec.RenderControl(hw)

            
'把gvEquipmentDeprec变回分页
            gvEquipmentDeprec.AllowPaging = True
            GvBind(
)

            Response.Write(tw.ToString)
            Response.End()
        
Catch ex As Exception
        
End Try 
    
End Sub

''' <summary>
    
''' 重写VerifyRenderingInServerForm
    
''' </summary>
    
''' <param name="control"></param>
    
''' <remarks></remarks>
    Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
    
End Sub

''' <summary>
    
''' 导出Excel
    
''' </summary>
    
''' <param name="sender"></param>
    
''' <param name="e"></param>
    
''' <remarks></remarks>
    Protected Sub btnExcel_Click(ByVal sender As ObjectByVal e As System.EventArgs) Handles btnExcel.Click
        Exports(
"application/ms-excel""固定资产折旧.xls")
    
End Sub

 

需要注意的几点:

1.需要overrides一下VerifyRenderingInServerForm方法(这一点非常重要,否则在点击按钮后会报错)

2.在页面的page属性中加入EnableEventValidation = "false"  

 

相关文章:

  • 2021-11-16
  • 2021-06-23
  • 2021-08-18
  • 2022-12-23
  • 2022-01-20
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-03
  • 2021-12-03
  • 2021-11-11
  • 2021-11-23
相关资源
相似解决方案