在我的ascx文件中,我使用Repeater为表创建行。所以基本上我只重复一行并将数据填充到:
<asp:Repeater ID="companyRepeater" runat="server">
<ItemTemplate>
<tr class = "DGItemStyle" id="myresultsRow1" runat="server">
<td style="padding:0.5em;" align="center"><%#Eval("compnSN1") %></td>
<td style="padding:0.5em;"><%#Eval("compnAddress1") %></td>
</tr>
</Itemtemplate>
</asp:Repeater>
但我需要每次都改变行的样式,来自:
CssClass="DGItemStyle"
到
CssClass="DGAlternatingItemStyle"
然后一次又一次。
所以我尝试的是替换:class =“DGItemStyle”by:&lt;%#Eval(“compnStyle1”)%&gt; ,我还用字符串
填充compnStyle1CssClass="DGItemStyle" and CssClass="DGAlternatingItemStyle"
或者在我的代码隐藏中。 但看起来标签不接受这个解决方案。它显示了这个错误:
Parser Error Message: The server tag is not well formed.
那么我该如何归档呢?
答案 0 :(得分:3)
使用Repeater.AlternatingItemTemplate
<asp:Repeater ID="companyRepeater" runat="server">
<AlternatingItemTemplate>
<tr class = "DGAlternatingItemStyle" id="myresultsRow1" runat="server">
<td style="padding:0.5em;" align="center"><%#Eval("compnSN1") %></td>
<td style="padding:0.5em;"><%#Eval("compnAddress1") %></td>
</tr>
</AlternatingItemTemplate>
<ItemTemplate>
<tr class = "DGItemStyle" id="myresultsRow1" runat="server">
<td style="padding:0.5em;" align="center"><%#Eval("compnSN1") %></td>
<td style="padding:0.5em;"><%#Eval("compnAddress1") %></td>
</tr>
</Itemtemplate>
</asp:Repeater>
检查此链接
答案 1 :(得分:1)
来自MSDN
<AlternatingItemTemplate>
<tr>
<td style="background-color:Aqua">
<b><%# Container.DataItem %></b>
</td>
</tr>
</AlternatingItemTemplate>
<ItemTemplate>
<tr>
<td style="background-color:Silver">
<%# Container.DataItem %>
</td>
</tr>
</ItemTemplate>