[英]Export to excel in C# error
我正在嘗試使用此代碼將我的面板導出到excel。
設計圖
<asp:Panel ID="ExcelPanel" runat="server" Visible="false">
<asp:GridView ID="ExcelGridView" runat="server" AutoGenerateColumns="False"
Width="100%" CellPadding="3" ForeColor="#333333" GridLines="Both" ShowHeader="True" Visible="true" >
<Columns>
<asp:TemplateField HeaderText="S. No." HeaderStyle-CssClass="gridViewHeader" ItemStyle-HorizontalAlign="left" SortExpression="wcName" ItemStyle-Width="12%">
<ItemTemplate>
<asp:Label ID="performanceReportTBMWCNameLabel" runat="server" Text='<%# Eval("SNo") %>' CssClass="gridViewItems"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:Panel>
C#代碼:
ExcelGridView.DataSource = gridviewdt;
ExcelGridView.DataBind();
ExcelPanel.Visible = true;
Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment;filename=file.xls");
Response.ContentType = "application/vnd.ms-excel";
StringWriter stringWrite = new StringWriter();
HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
ExcelPanel.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.Flush();
Response.End();
ExcelPanel.Visible = false;
這是我想要在我的excel文件中的區域。 但是我在excel文件中也獲得了包含母版頁的整個頁面。 如何避免整個頁面,只獲取excel文件中的面板?
您正在從ExcelPanel
渲染HTML,因此它顯示有關該面板更改面板到GridView
所有HTML,因此它將從GridView
獲取HTML
更改
ExcelPanel.RenderControl(htmlWrite);
至
ExcelGridView.RenderControl(htmlWrite);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.