Да, можете, вот простой пример.
Markup:
<asp:Repeater ID="rpTest" runat="server">
<ItemTemplate>
<div id="row<%# Eval("ID").ToString() %>">DIV CONTENT</div>
</ItemTemplate>
</asp:Repeater>
Подготовительный код теста:
public class TestObject
{
public int ID { get; set; }
public string Text { get; set; }
}
В вашей Page_Load или где вы инициализируете Repeater
:
List<TestObject> lst = new List<TestObject>();
lst.Add(new TestObject() { ID = 0, Text = "Zero" });
lst.Add(new TestObject() { ID = 1, Text = "One" });
lst.Add(new TestObject() { ID = 2, Text = "Two" });
lst.Add(new TestObject() { ID = 3, Text = "Three" });
rpTest.DataSource = lst;
rpTest.DataBind();
Выход:
<div id="row0">DIV CONTENT</div>
<div id="row1">DIV CONTENT</div>
<div id="row2">DIV CONTENT</div>
<div id="row3">DIV CONTENT</div>
EDIT:
Чтобы связать с Array
, просто назначьте Array
на DataSource
, а затем получите доступ к Array
элементам в вашей привязке с помощью:
<%# Container.DataItem %>