我有一个GridView,我想在RowDataBound事件期间根据单元格的值分配行的背景色。我愿意:
protected void Gridview_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.Cells[1].Text == "0")
{
e.Row.Style.Add("BackColor", "yellow");
}
TextBox txbx = e.Row.FindControl("Txt_Criteria") as TextBox;
txbx.Style.Add("BackColor", "yellow");
}
}
这两个表达式都不起作用...至少,一切都保持白色,虽然代码是建立的,因为我可以看到在源文件。
<tr style="font-size:11px;BackColor:yellow;">
<input name="GridView_$ctl14$Txt_Criteria" type="text" id="GridView_Txt_Criteria_12" style="BackColor:yellow;" />
为了检查与其他样式定义的任何干扰,我删除了所有样式引用,但结果保持不变。
<asp:GridView ID="GridView_Criteria" runat="server" DataKeyNames="ID" AutoGenerateColumns="false" OnRowDataBound="Gridview_OnRowDataBound">
<RowStyle Font-Size="11px" />
<Columns>
有什么建议吗?
1条答案
按热度按时间jq6vz3qz1#
好吧,你至少得到一个奖励,因为你的代码是正确的,但你的css有点错误。
试试这个:
或者在你的情况下: