我正在对gridview进行数据绑定,其中一列定义如下所示。我想要做的是根据文本是“是”还是“否”来为文本着色。如果文本为“是”,我想将其设置为红色,否则将其设置为绿色。可以这样做,如果是这样,应该通过css完成,还是可以在线上添加一些代码?
<asp:TemplateField HeaderText="Validated" ItemStyle-HorizontalAlign="Center" SortExpression="Product">
<ItemTemplate>
<asp:Label ID="lblValidated" runat="server" Text='<%# Bind("Validation") %>' />
</ItemTemplate>
</asp:TemplateField>
答案 0 :(得分:3)
以下应该做你想做的事。
<强> ASP.NET 强>
<asp:TemplateField HeaderText="Validated" ItemStyle-HorizontalAlign="Center" SortExpression="Product">
<ItemTemplate>
<asp:Label ID="lblValidated" runat="server" Text='<%# Bind("Validation") %>' CssClass='<%# SetColor(DataBinder.Eval(Container.DataItem, "Validation")) %>' />
</ItemTemplate>
<强> C#强>
public string SetColor(string Text)
{
return Text.ToUpper == "YES" ? "GreenClass" : "RedClass"
}
<强> CSS 强>
.GreenClass{color:green;}
.RedClass{color:red;}