在项数据绑定中使用Eval设置类

时间:2014-05-13 10:08:26

标签: c# css asp.net itemdatabound

我有一个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类。

建议我如何实现这一目标。

1 个答案:

答案 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/>