Повторитель ASP.net, прокрутите 3 за раз

У меня есть список данных, которые мне нужно отображать на веб-странице по 3 за раз.

Первый должен отображаться в div с именем «left», второй — в div с названием «center» и третий — в div с названием «right».

И мне нужно иметь возможность прокручивать данные с помощью пейджера. Таким образом, следующие 3 результата будут отображаться аналогичным образом, и так до конца набора данных.

Очевидно, что чередующиеся шаблоны в повторителе для этого не подходят.

Есть ли более разумный способ добиться этого?


person ChrisCa    schedule 09.04.2009    source источник
comment
Вы хотите загружать данные из базы данных, когда происходит событие прокрутки, или вы загружаете данные, когда страница загружается в первый раз, а затем показываете данные только при прокрутке?   -  person rahul    schedule 09.04.2009
comment
У меня есть все данные в памяти в коллекции. Обычно он содержит около 20 пунктов. И мне нужно отображать их по 3 за раз   -  person ChrisCa    schedule 09.04.2009
comment
Итак, сначала 3 строки ваших данных отображаются на странице. После каждой прокрутки вы получаете доступ к коллекции и отображаете следующие 3 строки... Так ли это?   -  person rahul    schedule 09.04.2009
comment
Ну, я еще ничего не реализовал - просто ищу предложения. Я надеялся, что смогу привязать источник данных повторителя к коллекции, а затем указать что-то в разметке для отображения разных тегов.   -  person ChrisCa    schedule 09.04.2009
comment
Почему бы вам не использовать div с прокруткой и не заполнить div в первый раз данными из коллекции?   -  person rahul    schedule 09.04.2009
comment
он должен использовать разбивку на страницы - это в дизайне пользовательского интерфейса   -  person ChrisCa    schedule 09.04.2009
comment
Какое событие запускает пейджинг для вас, прокрутка мыши или щелчок мыши?   -  person rahul    schedule 09.04.2009
comment
Здесь мы используем повторитель и предусмотрели разбиение на страницы. Но здесь мы вызываем базу данных для каждого клика, а затем показываем элементы, соответствующие каждой странице. Ваша коллекция статична? В вашем наборе записей нет опции удаления.   -  person rahul    schedule 09.04.2009
comment
Я думаю, что вы упускаете суть вопроса - как получить 3 записи внутри соответствующего div   -  person ChrisCa    schedule 09.04.2009


Ответы (1)


Попробуйте такой цикл

for (int i = 3; i ‹ enumerable.length + 3; i++) {

  if (i % 3 == 0)
  { 
     // Put it in div 1
  {
  else if (i % 3 == 1)
  {
     // put it in div 2
  {
  else if (i % 3 == 2)
  {
     // put it in div 3
  {

}

В первый раз будет использоваться div1, во второй раз div2, в третий раз div3, а затем в четвертый раз div1 и так далее...

person cerhart    schedule 10.04.2009