Вот озадачивающая проблема, на которую я не видел хороший ответ на StackOverflow, хотя там пара ударов в нем... У меня есть ситуация, где я хотел бы сделать это:
<asp:Repeater ID="MyRepeater" runat="server" OnItemDataBound="MyRepeater_ItemDataBound">
<ItemTemplate>
<li id="id?">
All the other stuff
</li>
</ItemTemplate>
</asp:Repeater>
Вопрос... состоит в том, как я заставляю идентификатор моего <литий> элементы быть id1, id2, id3, и т.д., на основе ItemIndex, с которым они связываются? До сих пор больше всего... er... "изящное" решение, которое я предложил, состоит в том, чтобы заменить <литий> asp:Literal и вывести <li..>' текст. Но это просто чувствует... так неправильно. И не, я не использую ASP.NET 4.0, который я считал, обеспечит эту функциональность.
Вот так:
<asp:Repeater ID="MyRepeater" runat="server" OnItemDataBound="MyRepeater_ItemDataBound">
<ItemTemplate>
<li id="li<%# ((RepeaterItem)Container).ItemIndex + 1%>">
All the other stuff
</li>
</ItemTemplate>
</asp:Repeater>