我有html文本数据,我想在gridview单元格中绑定这些数据。
但我的datagridview不是formet html文本。
EXP:
string htmltext = "<p>hi some text here</p>";
dgrow.rows[0].cell[1].value=htmltext;
在这种情况下,我的gridview的单元格值也包含Html标记。 那么如何在网格视图中格式化Html文本呢?
答案 0 :(得分:0)
在加价中(请注意模式是PassThrough):
<asp:GridView ID="GridView1" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="literal1" Mode="PassThrough" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
使用RowDataBound事件查找文字并设置值:
void GridView1GridView_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
//find the literal
var literal1 = e.Item.FindControl("literal1") as Literal;
if (literal1 != null)
{
literal1.Text = "<p>hi some text here</p>";
}
}
}
请原谅任何错误,我没有测试过上述情况。
答案 1 :(得分:0)
我最近还要求在WinForms DataGridView控件中呈现HTML文本。
和你一样,我找不到符合我需求的东西,所以创建了我自己的自定义DataGridViewHTMLCell类。
您可以在此处找到代码和示例项目:https://github.com/OceanAirdrop/DataGridViewHTMLCell