要去掉 GridView 導出的 Excel 中的篩選,可以在導出之前先移除 GridView 中的篩選功能。
首先,你需要在 ASPX 頁面的 GridView 控件中設置 AllowFilteringByColumn="false"
,這將禁用 GridView 中的篩選功能。
<asp:GridView ID="GridView1" runat="server" AllowFilteringByColumn="false">
<!-- GridView 的列定義 -->
</asp:GridView>
然后,在導出 Excel 的代碼中,使用 GridView 的數據源(比如 DataTable)來生成 Excel 文件。這樣,由于 GridView 中已經禁用了篩選功能,導出的 Excel 文件中就不會包含篩選。
protected void ExportToExcel()
{
// 獲取 GridView 的數據源
DataTable dt = (DataTable)GridView1.DataSource;
// 創建 Excel 對象
ExcelPackage excel = new ExcelPackage();
var worksheet = excel.Workbook.Worksheets.Add("Sheet1");
// 將 GridView 的數據導出到 Excel 中
int rowIndex = 1;
foreach (DataRow row in dt.Rows)
{
int colIndex = 1;
foreach (var cellValue in row.ItemArray)
{
worksheet.Cells[rowIndex, colIndex].Value = cellValue;
colIndex++;
}
rowIndex++;
}
// 導出 Excel 文件
Response.Clear();
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment; filename=ExcelFileName.xlsx");
Response.BinaryWrite(excel.GetAsByteArray());
Response.End();
}
以上代碼中的 ExcelFileName.xlsx
是導出的 Excel 文件名,你可以根據需要進行修改。