首页 > 解决方案 > 使用 EPPlus 将 Web 表单 DataGrid 导出到 excel

问题描述

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

标签: c#asp.netwebforms

解决方案


我想到了。我正在将我的数据网格转换为数据表,因为我稍后需要使用它。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;
        }

推荐阅读