使用 EPPlus 将 Web 表单 DataGrid 导出到 excel

Web Form DataGrid export to excel using EPPlus

我有一个 Web 窗体应用程序,它有一个 DataGrid 并根据特定条件隐藏了一些列。当我只导出 headers 时,我也导出了我隐藏在代码后面的列。如何导出当前用户看到的列?

我明白了。我正在将我的数据网格转换为数据表,因为我需要稍后使用它。 foreach 中的 if 子句仅查找可见列。

private DataTable ConvertToDataTable(DataGrid dataGrid)
        {
            var dt = new DataTable();
            foreach (DataGridColumn dgCol in dataGrid.Columns)
            {
                if (dgCol.Visible)
                {
                    dt.Columns.Add(dgCol.HeaderText);
                }
            }

            return dt;
        }