我有一个Repeater项目,其中它们是这样的tr元素。 我想根据项目索引将css类设置为交替项目。
我的设计代码就像这样
<ItemTemplate>
<tr id='<%# Eval("RegNum").ToString()%>' class='<%# Eval("RowClass").ToString()%>'>
项目数据这样绑定但不起作用:(错误的)
if (e.Item.ItemType == ListItemType.AlternatingItem)
{
DataBinder.Eval("RowClass", "bgBlack");
}
else
{
DataBinder.Eval("RowClass", "bgWhite");
}
其中bgWhite和bgBlack是css类。
建议我如何实现这一目标。
答案 0 :(得分:3)
你可以看到内置的ItemIndex属性是否可以被2整除,并使用它来设置一个css类:
class="<%# Container.ItemIndex % 2 == 0 ? "bgWhite" : "bgBlack" %>"
这样做的好处是完全基于您的UI代码(ascx或aspx文件),并且不依赖于JavaScript。
请参阅以下链接
ASP.NET repeater alternate row highlighting without full blown <alternatingitemtemplate/>