Repeater第一条记录时加一个背景颜色,怎么弄啊
<asp:Repeater ID= "Repeater1 " runat= "server ">
<ItemTemplate>
<td>
<a href= "1.aspx?id= <%#Eval( "ID ")%> "> <%#Eval( "GName ") %> </a>
</td>
</ItemTemplate>
</asp:Repeater>
后台是:
Repeater1.DataSource =Ds1();
Repeater1.DataBind();
我想在第一条记录显示时候, <td 加上 bgcolor=#ff0000>
其它记录不用加!
怎么弄啊谢谢
------解决方案--------------------你可以绑定之前处理
for(int i=0;i <Ds1.Table[0].Rows.Count;i++)
{
if(i== 0)
Ds1.Table[0].Rows[i][ "GName "] = " <td bgcolor=#ff0000> " + <a href= '1.aspx?id= " + Convert.ToString(Ds1.Table[0].Rows[i][ "ID "]) + "> " + Convert.ToString(Ds1.Table[0].Rows[i][ "GName "]) + " </a> ";
}
------解决方案-------------------- <td <%# if(Container.ItemIndex==1){ "bgcolor=#ff0000 "};%>
看看这样行不行~~
------解决方案-------------------- <asp:Repeater ID= "Repeater1 " runat= "server ">
<ItemTemplate>
<%# Container.ItemIndex == 0 ? " <td bgcolor=#ff0000> " : " <TD> " %>
<a href= "1.aspx?id= <%#Eval( "ID ")%> "> <%#Eval( "GName ") %> </a>
</td>
</ItemTemplate>
</asp:Repeater>
------解决方案--------------------你的td必须是服务器端控件(runat= "server "),这样你就可以使用:
HtmlTableRow td=(HtmlTableRow)myRepeater.Items[0].FindControl( "..... ");
类似代码找到它了。
面向对象编程,就是要清楚地知道你的代码处理的对象如何找到。