Sean A. Hanley
Я предполагаю, что вы имеете в виду ASP.NET управление ретранслятором.
Повторитель делает именно то, что предполагает его название: он повторяет шаблон для каждого элемента, к которому он привязан. При желании вы также можете указать шаблон верхнего и/или нижнего колонтитула, который будет отображаться соответственно до и после повторяющихся элементов.
По сути, они представляют собой шаблон HTML и/или другие простые ASP.NET управление. Использование ретранслятора-это двухэтапный процесс. Сначала добавьте его на свою страницу и определите шаблоны. Давай сделаем что-нибудь попроще:
<asp:Repeater ID="myRepeater" runat="server">
<HeaderTemplate>
<div style="font-weight: bold;">My Repeater</div>
</HeaderTemplate>
<ItemTemplate>
<div><asp:Label ID="myLabel" runat="server"/></div>
</ItemTemplate>
</asp:Repeater>
Смотреть было не на что, но следить было легко. Это приведет к выходу a
div
содержащий простой ASP.NET ярлык для каждого элемента, который он повторяет снова. То
div
это просто так, что он ставит каждый на новую строку, когда вы видите его в браузере. Кроме того, я определил a
HeaderTemplate
и поставьте там какой-нибудь жирный текст, который будет появляться первым и выше моих строк надписей. Однако сейчас метки пусты, поэтому нам нужно сделать еще один шаг: привязать данные к чему-то!
Вы можете использовать
SqlDataSource
,
ObjectDataSource
, или даже просто простой
List<string>
объект в вашем коде-позади. Давайте сделаем это, так как это не требует подключения к базе данных или чего-то необычного.
private void Page_Load(object sender, EventArgs e)
{
List<string> myList = new List<string>();
myList.Add("Test1");
myList.Add("Test2");
myList.Add("Test3");
myRepeater.DataSource = myList;
myRepeater.DataBind();
}
Я создал простой список из трех строк и привязал к нему ретранслятор.
Теперь, когда у нас есть некоторые данные для отображения, нам нужно изменить еще одну вещь. Нам нужно связать метки с данными, чтобы они отображали содержимое. Измените элемент управления Label в
ItemTemplate
чтобы выглядеть вот так:
<asp:Label ID="myLabel" runat="server" Text='<%# Container.DataItem %>'/>
Это использует выражения привязки данных, чтобы получить текущий элемент и ввести его в свойство text метки. Поскольку мы привязываемся к списку строк, DataItem будет просто строкой. Там есть гораздо больше выражений, но я предлагаю вам прочитать о них отдельно, поскольку они выходят за рамки этого.
Если вы запустите эту программу, то в вашем браузере должно появиться что-то вроде следующего:
Мой Ретранслятор
Тест1
Условие_2
Тест3