我正在尝试放置一个包含代表点(绿色,黄色或红色)的样式的html div。问题是:我必须将这个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
我坚持这一点,任何帮助都将不胜感激
答案 0 :(得分:1)
在新列中指定HtmlEncode =“False”
<asp:GridView ID="GridView1" runat="server">
<Columns>
<asp:DynamicField HtmlEncode="False"></asp:DynamicField>
</Columns>
</asp:GridView>