【发布时间】:2013-11-19 19:54:14
【问题描述】:
我有以下数据列表:
<asp:DataList ID="DataList1" runat="server" DataKeyField="DocumentID" >
<HeaderTemplate>
Name </td>
<td> header 2 </td>
<td> header 3 </td>
<td> header 4 </td>
<td> viewed </HeaderTemplate>
<ItemTemplate>
<a href="#" id="doc_<%# Eval("DocumentID") %>" class="docPreview">
<%# Eval("FileName")%>
</a>
</td>
<td><asp:Label ID="Item2Label" runat="server" Text='<%# Eval("Item2")%>' /></td>
<td><asp:Label ID="Item3Label" runat="server" Text='<%# Eval("Item3")%>' /></td>
<td><asp:Label ID="Item4Label" runat="server" Text='<%# Eval("Item4")%>' /></td>
<td>
<asp:CheckBox ID="isViewed" runat="server" Text='<%# Eval("DocumentID") %>' CssClass="hiddenText" />
</ItemTemplate>
</asp:DataList>
这会生成一个有效的 HTML 表格。
但是,当我尝试设置 AlternatingItemStyle-CssClass 或使用 AlternatingItemStyle 它只对(每个交替行的)第一个 td 进行更改,而不是对整行进行更改。 我也尝试过使用 OnItemDataBound 并在后面的代码中设置 css 类,但它也只将类添加到 td 而不是 tr。
我只是想念使用 DataList,有没有简单的方法来解决这个问题?
【问题讨论】:
-
你尝试过alternateitemtemplate吗? msdn.microsoft.com/en-us/library/…