Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Repeater + разбитие на страници


Автор: andrew_sh 2.8.2007, 13:18
Здравствуйте !!!
    Нужно реализовать просмотр данных (не табличный, типа DATAGRID) с разбитием на страницы... Как вариант через repeater с собственным разбитием на страницы (необходимые данные в dataset; из dataset'a n колиство записей начиная с  i; вывод навигации по страницам)... Может есть варианты получше (практичней) или компонент типа DataGrid(GridView) c автоматическим разбитием и нетабличным (как в repeater со своими шаблонами) представлением данных ?
Спасибо !!! 

Автор: Mymik 2.8.2007, 14:54
Почитай про класс PagedDataSource  позволяет реализовать разбивку на страницы для любого контрола

Автор: andrew_sh 2.8.2007, 18:29
Огромное спасибо за подсказку !!! Это как раз то что нужно !!! Вот что нашел про PagedDataSource (оригинал http://www.gotdotnet.ru/DOTNET/FAQ/ASPNET/25704.aspx)

Как один из вариантов, можно использовать класс PagedDataSource.
Допустим, некий метод ReturnDataSource(), возвращает DataSet.
В DataSet несколько таблиц.
Объявим в классе страницы переменную:
Код

protected PagedDataSource pds;
//В методе Page_Init:
// создаем объект 
pds = new PagedDataSource(); 
// инициализируем его свойство 
DataSource pds.DataSource = ReturnDataSource().Tables[2].DefaultView; 
// используем разделение на страницы 
pds.AllowPaging = true; 
// количество Items на странице 
pds.PageSize = 20; 

Далее, ту страницу, которую будем отображать, устанавливаем при помощи свойства CurrentPageIndex. Количество страниц можно определить из свойства PageCount.
И, наконец:
Код

Repeater1.DataSource = pds; Repeater1.DataBind();

Автор Евгений Веприков

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)