Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在TemplateField中设置前景色?_C#_Asp.net_Templatefield - Fatal编程技术网

C# 如何在TemplateField中设置前景色?

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 ==

评估性别后,下面的代码在GridView列中显示“M”或“F”



当它是“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>