ASP.NET GridView нумерация страниц без обратной передачи - PullRequest
4 голосов
/ 12 ноября 2009

Просто быстрый вопрос для всех вас, ребята.

У меня есть сетка в панели обновлений. Мой модальный PopUp тянет эту панель вверх. Пока все хорошо.

Однако, когда я пытаюсь сделать нумерацию страниц в представлении всплывающей сетки, страница отправляет обратно.

Затем модальное всплывающее окно исчезает, как и мой GridView.

Когда я снова нажимаю кнопку mybutton, на ней отображаются модальное всплывающее окно с видом сетки и содержимое следующей страницы в виде сетки.

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

Любая помощь будет принята с благодарностью.

Спасибо

Ответы [ 3 ]

2 голосов
/ 12 ноября 2009

Страница должна отправляться обратно каждый раз, когда вы меняете страницу GridView. Однако вы можете эмулировать желаемую функциональность, подключившись к событию PageIndexChanged GridView:

protected void GridView1_PageIndexChanged(object sender, EventArgs e)
{
    modalPopupExtender1.Show();
}
0 голосов
/ 15 ноября 2009

всплывающее окно должно исчезать только при нажатии CancelControlID / OkControlID. Более 1 панели обновления могут быть немного сложнее.

Вы обрабатываете событие смены страницы.

Private Sub Grid_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles Grid.PageIndexChanging
    Grid.PageIndex = e.NewPageIndex
    Grid.SelectedIndex = -1
    Grid.DataBind()
End Sub

Это не важно (с точки зрения этого вопроса), но вы измените ваш режим на Условный.

0 голосов
/ 12 ноября 2009

У вас должен быть этот макет:

<ModalPopup>
   <UpdatePanel>
       <GridView>
   <UpdatePanel>
</ModalPopup>

Таким образом, ваш ModalPopup не исчезнет, ​​, если только у вас не будет другой внешней панели обновления, а для этой панели обновления задан UpdateMode = Always

...