2010-04-07 7 views
0

Я использую radgrid в своем веб-приложении. Я хочу, чтобы избежать повторного набора записей, когда кнопка пейджинга нажата на radgrid.Как избежать повторного набора записей при нажатии кнопки пейджинга на радиоуправлении

У меня есть метод SetTodaysAlerts, который приближается к около 100 записей и привязывается к моей radgrid. Размер страницы radgrid равен 10, поэтому доступны кнопки First, Next, Previous и Last. Когда я нажимаю следующую кнопку, как я могу избежать повторной выборки записей снова.

FYI: Я использую событие radgrid_NeedDataSource, которое снова выполняет выборку данных при нажатии любой кнопки навигации на радиосети.

ответ

0

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

При использовании RadGrid (при условии, что AllowCustomPaging = true) вам нужно сначала подсчитать общее количество записей и сохранить значение в свойстве VirtualItemCount RadGrid.

Сейчас в NeedDataSource, который вызывается изменением страницы нужно рассчитать диапазон записей, чтобы получить следующим образом:

int firstRow = radGrid.CurrentPageIndex * radGrid.PageSize; 
int maxRow = radGrid.PageSize; 

, а затем передать их в свой запрос, получить результаты, сделать набор DataSource и Rebind()