2010-04-14 4 views
2

Я использую элемент управления datapager в своем списке, чтобы выполнить подкачку в нем.Возможна отмена поискового вызова в ListView с использованием DataPager

При пейджинге через стол мне нужно выполнить некоторые проверки. Когда эти проверки не будут успешными, пейджинг должен быть отменен.

В настоящее время я выполняю проверку в событии PagePropertiesChanging ListView, однако аргументы не предоставляют свойство Cancel.

protected void MyListView_PagePropertiesChanging(object sender, PagePropertiesChangingEventArgs e) 
{ 
    if (!Validate()) 
    { // cancel the paging action} 
} 

Кто-нибудь знает, возможно ли отменить пейджинг и как его выполнить? Спасибо

ответ

0

Я тоже был разочарован тем, что не было более простого способа сделать это. Я оказался очень похож на Littlefool, где я использовал событие PagePropertiesChanging. В этом случае, если моя проверка не прошла, я вызвал SetPageProperties() на моем DataPager с сохраненным значением его предыдущего значения StartRowIndex, которое я сохраняю в ViewState.

Не мое гордое решение, но оно работает.

+0

да, это похоже на «единственный» способ. Я закончил с внедрением следующего/предыдущего использования TemplatePagerField. Как только они жалуются на числовой пейджинг, я сделаю это так. – Ronald

0

Не могли бы вы просто вручную указать страницу?

Например, проверьте, чтобы страница, если была в порядке, в отличие от попытки и страницы, подтвердите, а затем отмените.

+0

Да, но мне было интересно, возможно ли это с помощью встроенных элементов управления пейджером. я смог реализовать следующий/предыдущий, используя TemplatePagerField и его PagerCommand, но я не могу реплицировать NumericPagerField – Ronald

Смежные вопросы