Создание списка данных во время выполнения с фиксированными назначенными шаблонами

Мне нужно сгенерировать DataLists во время выполнения в соответствии с элементами, выбранными пользователем.

Как это можно сделать из кода программной части .aspx? У меня есть фиксированный формат HeaderTemplate и ItemTemplate для каждого из DataList, которые будут сгенерированы.

<HeaderTemplate>
<tr>Table Heading<tr>
<tr>    <th>ItemNo</th> <th>Item Detail</th><tr>
</HeaderTemplate>

<ItemTemplate>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item1")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item2")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item3")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item4")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item5")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item6")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item7")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item8")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item9")%></td> </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item10")%></td>    </tr>
<tr>    <td><%#CallFunc()%></td>    <td><%#Eval("Item11")%></td>    </tr>
</ItemTemplate>

Небольшой пример создания такого рода списков данных среды выполнения и присвоение ему этих шаблонов было бы очень полезно.
Спасибо


person Cipher    schedule 01.03.2012    source источник


Ответы (1)


Почему нельзя использовать gridview?

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False">
        <Columns>
            <asp:BoundField DataField="ItemID" HeaderText="Item ID" />
            <asp:BoundField DataField="ItemName" HeaderText="Item Name" />
        </Columns>
    </asp:GridView>
person PraveenVenu    schedule 01.03.2012
comment
Могу ли я назначить шаблоны для представлений сетки, как в сообщении выше в code-behind? - person Cipher; 01.03.2012
comment
Можно ли это сделать в коде программной части? Можете выложить небольшой пример этого поколения? - person Cipher; 01.03.2012
comment
Снимок экрана, который я сделал для этой штуки: i.imgur.com/t0elz.png. идея как это сделать? - person Cipher; 01.03.2012
comment
@PraveenMenu: Могу ли я сохранить сетку на веб-странице и продолжать добавлять данные в столбцы в каком-то указанном выше формате? Это возможно? - person Cipher; 01.03.2012
comment
Я не думаю, что понимаю это полностью. Так количество столбцов динамическое? - person PraveenVenu; 01.03.2012
comment
@PraveenMenu: Да, для каждой опции, отмеченной пользователем, должен быть создан новый столбец. Или, если бы вы могли использовать указанный выше формат, то есть каждый столбец в элементе управления данными должен иметь один результат запроса. - person Cipher; 01.03.2012
comment
@PraveenMenu: Я только начинаю работать с ASP.NET. Пример будет большим подспорьем в этом - person Cipher; 01.03.2012
comment
попробуйте этого друга stackoverflow.com/questions/1220715 / - person PraveenVenu; 01.03.2012
comment
@PraveenMenu: Как это будет разделено на две колонки в случае вложенного репитера? - person Cipher; 01.03.2012
comment
Задайте для свойства RepeatColumns повторителя значение 2, а RepateDirection - значение Horizontal. - person PraveenVenu; 01.03.2012
comment
@PraveenMenu: Попробую сейчас. Но разве 2 не ограничивает количество столбцов только двумя? Что, если пользователь выберет три варианта из чекбоксов? - person Cipher; 01.03.2012
comment
@PraveenMenu: Я не думаю, что в репитере есть свойство RepeaterColumns. Должен ли я использовать вместо этого DataList? - person Cipher; 01.03.2012
comment
позвольте нам продолжить это обсуждение в чате - person Cipher; 01.03.2012