这是我的Gridview中的一个链接字段列。
<asp:HyperLinkField DataNavigateUrlFields="id" ControlStyle-ForeColor="blue"
DataNavigateUrlFormatString='viewdetails.aspx?id={0}' DataTextField="title"
HeaderText="主题" Target="_blank">
</asp:HyperLinkField>
但是我其它有一列是“状态”列的值不同。当状态="Yes"时,则要求此链接字段列的值颜色变为绿色, 而当状态="No"时,则要求此链接字段列的值文字颜色变为红色,
请教怎么做才好呢? 谢谢!
------解决方案--------------------------------------------------------
你可以在绑定事件里面进行处理,或者使用模板列
<a href="" style='color:<%#Eval("状态字段").ToString()=="Yes"?"green":"red"%>'
------解决方案--------------------------------------------------------
给你简单写了一个! 是不是这个意思??
- C# code
//改变gridview 列的颜色public void Particular(){for (int i = 0; i < this.grv_PD.Rows.Count;i++){string st=Convert.ToString(this.grv_PD.Rows[i].Cells[13].Text);//需要判断的列if (st =="Yes"){grv_PD.Rows[i].Cells[15].BackColor = System.Drawing.Color.Yellow;//需要改变颜色的列}else{.....}}}
------解决方案--------------------------------------------------------
那就写一个函数,可以处理N种情况
<a href='viewdetails.aspx?id=<%#Eval("id")%>' Target="_blank" style='color:<%# GetColor(Eval("状态字段").ToString())%>'><%#Eval("title")%></A>
public String GetColor(String s)
{
if(s=="Yes") return "green";
else if(s=="No") return "red";
else
return "#000000";
}