我试图完成简单地将 css 类添加到我 <itemtemplate/>
中交替行上的 div无需包括一个完整的<alternatingitemtemplate/>
的开销这将迫使我在未来保持大量标记同步。
我见过类似 http://blog.net-tutorials.com/2009/04/02/how-to-alternate-row-color-with-the-aspnet-repeater-control/ 的解决方案我很想使用它,但这对我来说仍然“闻起来”不对。
还有其他人有更易于维护和直接的解决方案吗?理想情况下,我希望能够执行以下操作:
<asp:repeater id="repeaterOptions" runat="server">
<headertemplate>
<div class="divtable">
<h2>Other Options</h2>
</headertemplate>
<itemtemplate>
<div class="item <%# IsAlternatingRow ? "dark" : "light" %>">
但我不知道如何实现 IsAlternatingRow
- 即使使用扩展方法。
最佳答案
无需管理自己的变量(递增计数器或 bool 值);你可以看看内置的ItemIndex
属性可以被二整除,并使用它来设置一个 css 类:
class="<%# Container.ItemIndex % 2 == 0 ? "" : "alternate" %>"
这样做的好处是完全基于您的 UI 代码(ascx 或 aspx 文件),而不依赖于 JavaScript。
关于c# - ASP.NET 中继器交替行突出显示没有完全成熟 <alternatingitemtemplate/>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/847806/