C# 如何在TemplateField中设置前景色?
评估性别后,下面的代码在GridView列中显示“M”或“F”C# 如何在TemplateField中设置前景色?,c#,asp.net,templatefield,C#,Asp.net,Templatefield,评估性别后,下面的代码在GridView列中显示“M”或“F” 当它是“M”时,我想使用textcolor红色和蓝色,否则。我该怎么做?在aspx文件或代码隐藏中都可以。如果可能的话,我想知道这两种方法。您可以使用GridView上的onRowDataBound事件检查“M”或“F”,然后根据值更改FontColor void gridview_RowDataBound(Object sender, GridViewRowEventArgs e) { if(e.Row.RowType ==
当它是“M”时,我想使用textcolor红色和蓝色,否则。我该怎么做?在aspx文件或代码隐藏中都可以。如果可能的话,我想知道这两种方法。您可以使用GridView上的
onRowDataBound
事件检查“M”或“F”,然后根据值更改FontColor
void gridview_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
string theValue = e.Row.Cells[3].Text;
if (theValue ="M")
{
e.Row.Cells[1].Forecolor= Color.Red
}
else if (theValue ="F")
{
e.Row.Cells[1].Forecolor= Color.Blue;
}
}
}
要通过标记完成此操作,您必须将项目模板内容包装到例如
,并对其应用必要的样式,如下所示:
<asp:TemplateField HeaderText="Gender">
<ItemTemplate>
<div style='color: <%# Eval("Gender") == "M" ? "Red" : "Blue" %>'>
<%# Eval("Gender") %>
</div>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Gender">
<ItemTemplate>
<div style='color: <%# Eval("Gender") == "M" ? "Red" : "Blue" %>'>
<%# Eval("Gender") %>
</div>
</ItemTemplate>
</asp:TemplateField>