【发布时间】:2014-10-12 15:32:59
【问题描述】:
我有一个 Gridview,它有一些 FontAwesome 复选标记(fa-check),问题是当我将 Grid 导出到 Excel 时,这些字段显示为空白。更重要的是,在运行时 cell.Text 值是空字符串(“”),因此我无法有效地将文本替换为“YES”。 我正在使用通常的代码进行导出(Stringwriter,HtmlTextWriter,然后为每个 其中的Gridview Row和TableCell)
关于如何在导出时替换它的任何线索?
PS:我可以使用 YES NO 代替 Font Awesome 图标来重复/隐藏列,然后在导出时隐藏和取消隐藏它们,但我正在寻找一种更优雅的方式。
任何帮助表示赞赏
【问题讨论】:
-
Font Awesome 将使用 Unicode 专用区域中的一个字符进行 fa-check,以便 Excel 导出器将其丢弃。不知道导出机制:是不是GridView提供的?
-
不,导出机制是自定义代码。 Loop1 行 Loop2 单元格 Loop3 控件(删除控件并用文字替换)然后是 Response.Write、Output.Write、.Flush 和 .End
-
OK:我希望您收到Unicode character 0xf00c 的复选标记。如果字符串肯定是空的而不是例如VS 未正确呈现,那么我想 ASP.NET 在将其提供给您之前将其剥离:我知道它对发布的私有使用区域字符非常小心。您也许可以深入研究 ASP.NET 源代码以了解它在做什么以及是否有绕过过滤器的方法,但我建议沿着传递数据的不同方式路线:我希望有比隐藏列更优雅的方式!
-
您能否编辑问题并向我们展示一部分 Designer 代码以检查您如何使用 FA?
标签: asp.net gridview export-to-excel font-awesome