在 GridView 单元格中呈现 HTML 标签
Posted
技术标签:
【中文标题】在 GridView 单元格中呈现 HTML 标签【英文标题】:Render HTML tags in GridView Cell 【发布时间】:2013-01-13 01:52:41 【问题描述】:我有一个gridview,我想在一个单元格内插入一个面板,我想在其中呈现html标签。相反,我在文本中看到了 html 标签。有什么想法吗?。
protected void grdThreat_RowDataBound(object sender, GridViewRowEventArgs e)
if (e.Row.RowType == DataControlRowType.DataRow)
Panel mainPanel = new Panel();
mainPanel.Controls.Add(new LiteralControl(e.Row.Cells[4].Text));
e.Row.Cells[4].Controls.Add(mainPanel);
【问题讨论】:
我认为您可能需要一个锚标记 (HyperLink) 而不是 LiteralControl。 【参考方案1】:在包含 HTML 的 GridViews 绑定字段中将 HtmlEncode 属性设置为 false
【讨论】:
这解决了我的旧项目问题,谢谢! (3 年后哈哈)【参考方案2】:使用超链接而不是文字控制..
【讨论】:
【参考方案3】:我认为,您可以在 System.Net 名称空间中使用 HttpUtility.HtmlDecode。我没有测试过,你可以试试。
【讨论】:
【参考方案4】:修改单元格的 Text 属性,然后它应该可以工作。目前它只是作为文本粘贴。
另见How to render decoded HTML in a (i.e. a <br>) in GridView cell
【讨论】:
以上是关于在 GridView 单元格中呈现 HTML 标签的主要内容,如果未能解决你的问题,请参考以下文章
如何在 GridView 的 FooterTemplate 单元格中对齐文本