将HTML放入aspxGridView上动态生成的列中

本文关键字:动态 HTML 放入 aspxGridView | 更新日期: 2023-09-27 18:20:43

我正在尝试放置一个htmldiv,它包含一个表示点(绿色、黄色或红色)的样式。问题是:我必须把这个html放在一个用程序制作的gridview(histRagStatus)列中,正如你所看到的:

    private void popularHistoricoRAGStatus()
    {
             DataTable ragTable =ProjetoBO.HistoricoRAGStatusProjeto(Convert.ToInt32(Session["idProjeto"]));
        int agrupadorRagStatus = -1;
        int cont = 1;
        var tabelaFinal = PegarDataTable();
        DataRow dataRow = tabelaFinal.NewRow();
        foreach (DataRow row in ragTable.Rows)
        {
            cont++;
            if (Convert.ToInt32(row[9]) != agrupadorRagStatus)
            {
                cont = 1;
                agrupadorRagStatus = Convert.ToInt32(row[9]);
                tabelaFinal.Rows.Add(dataRow);
                dataRow = tabelaFinal.NewRow();
                dataRow[1] = PegarCorIndicadorRagStatus(Convert.ToInt32(row[3]),row[6].ToString());
                continue;
            }
            dataRow[0] = DateTime.Parse(row[2].ToString()).ToShortDateString();
            dataRow[cont] = PegarCorIndicadorRagStatus(Convert.ToInt32(row[3]), row[6].ToString());
        }
        histRagStatus.DataSource = tabelaFinal;
        histRagStatus.DataBind();
   }

我得到了这个DataTable,我用数据库中的数据填充它,并将它作为数据源放在网格视图中。但问题是:当我有一个带有静态列的表时,我在设计时放了它,它可以正常工作,html被转换成图像,但当我把SAME html放进一个程序化的列中时,它不起作用,它变成了html文本本身,正如你在这里看到的那样https://www.dropbox.com/s/rf07ecu66axmzg0/Sem%20t%C3%ADtulo.png

我被这个卡住了,任何帮助都将不胜感激

将HTML放入aspxGridView上动态生成的列中

在新列中分配HtmlEncode="False"

<asp:GridView ID="GridView1" runat="server">
            <Columns>
                <asp:DynamicField HtmlEncode="False"></asp:DynamicField>
            </Columns>
        </asp:GridView>