【发布时间】:2010-11-03 07:47:47
【问题描述】:
与大多数数据绑定的 ASP.NET 控件一样,ASP.NET ListView 控件具有一个 AlternatingItemTemplate,例如,您可以使用它来为奇数行和偶数行呈现不同的 css 类。该控件还具有 GroupTemplate,您可以使用它来对项目进行分组并显示例如 TD 中的 3 个项目,这些项目在 TR 中分组。但是,没有交替组模板。我的问题是如何在 GroupTemplate 中替换 tr 的类属性。基本上我想在一个 TR 中有 3 个项目,并在奇数和偶数 TRs 上交替使用样式。
我想避免将一个数据绑定控件嵌套在另一个控件中,并且我已经尝试在数据绑定表达式<%# Alternate() %> 中绑定 TR 的类,但似乎数据绑定表达式仅在 itemtemplate 中调用(显然它们用于数据绑定事件,组模板不调用它)
有什么想法吗?
示例代码:
<asp:ListView ID="lv1" runat="server" EnableViewState="false" GroupItemCount="3">
<LayoutTemplate>
<table class="asd">
<asp:PlaceHolder ID="groupPlaceholder" runat="server"></asp:PlaceHolder>
</table>
</LayoutTemplate>
<GroupTemplate>
<tr class='<%# GetAlternatingCssClass() %>'>
<asp:PlaceHolder ID="itemPlaceholder" runat="server"></asp:PlaceHolder>
</tr>
</GroupTemplate>
<ItemTemplate>
<td>
<asp:HyperLink runat="server" NavigateUrl='<%# Eval("Url") %>'> <%# Eval("Text") %> </asp:HyperLink>
</td>
</ItemTemplate>
</asp:ListView>
【问题讨论】:
标签: asp.net