Kie*_*ton 54 c# asp.net data-binding extension-methods repeater
我正在尝试简单地将css类添加到我的备用行中的div上,<itemtemplate/>而不会包含完全爆炸的开销,<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" %>">
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何实现IsAlternatingRow- 即使使用扩展方法.
Ric*_*ett 128
无需管理自己的变量(递增计数器或布尔值); 你可以看看内置ItemIndex属性是否可以被2整除,并使用它来设置一个css类:
class="<%# Container.ItemIndex % 2 == 0 ? "" : "alternate" %>"
Run Code Online (Sandbox Code Playgroud)
这样做的好处是完全基于您的UI代码(ascx或aspx文件),并且不依赖于JavaScript.
小智 17
C#
class="<%# Container.ItemIndex % 2 == 0 ? "" : "alternate" %>"
Run Code Online (Sandbox Code Playgroud)
VB
class="<%# iif(Container.ItemIndex Mod 2 = 0,"","alternate") %>"
Run Code Online (Sandbox Code Playgroud)
这对我有帮助
class='<%# Container.ItemIndex % 2 == 0 ? "" : "alternate" %>'
Run Code Online (Sandbox Code Playgroud)
以前的答案导致"服务器标签格式不正确"错误.
| 归档时间: |
|
| 查看次数: |
34818 次 |
| 最近记录: |