2009-04-13 5 views
0

У меня есть список пользователей в левой части моей страницы в datagrid, и я хочу загрузить div в правой части моей страницы с помощью информации о клике пользователя. Я предполагаю, что я сделаю загрузку div в событии itemcommand, но как мне обрабатывать загрузку страницы? Нужно ли мне знать, что вызвало обратную связь? Нужно ли перезагружать сетку на page_load?Определите, является ли postback page_load или itemcommand

ответ

0

Исключить сетку связываясь с проверкой! IsPostBack

if(!IsPostBack){ 
    // Bind the Grid 
} 

Для ДИВ ItemCommand вы получите получить значение которого щелкнул из сетки и загрузить информацию пользователя.

Таким образом, вам не потребуется каждый раз загружать сетку. Он будет загружать первый раз. Я не думаю, что вам нужно будет проверить, что сделало postback, потому что в любом случае вы будете загружать сетку только один раз.

1

Как мне обрабатывать загрузку страницы тогда?

Каждый обратный вызов использует новый экземпляр класса вашей страницы и полностью перестраивает страницу. Единственное отличие - некоторые элементы управления могут быть предварительно заполнены через ViewState. Вам не нужно повторять нагрузку для любого из этих элементов управления.

Нужно ли знать, что вызвало обратную связь?

ASP.Net будет обрабатывать это для вас и запускать мероприятие. Вам нужно знать только, является ли это обратной передачей, и, возможно, даже не той (см. Следующую часть).

Нужно ли также перезагружать сетку на page_load?

Да. Ну, вроде. Вам нужно повторно отобразить html для сетки в браузере. Хорошей новостью является то, что ваши данные сетки уже находятся в viewstate, и это произойдет автоматически. Вам не нужно об этом беспокоиться.

Тем не менее, во многих случаях вы можете обнаружить, что лучше отключить viewstate для сеток и перезагрузить их на любой обратной стороне в любом случае. Это связано с тем, что ViewState - это всего лишь скрытый ввод на вашей странице, который должен быть отправлен (загружен) на сервер с каждым запросом. Большинство интернет-пользователей имеют очень ограниченную пропускную способность, и поэтому большая ViewState может сделать ваш сайт показательным, даже если ваш сервер вряд ли разбивает пот.

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

В отличие от этого, если это сетевое приложение int ra, в котором пользователи обычно имеют локальные сетевые подключения к вашему веб-серверу, это сложно превзойти ViewState для балансирования быстродействия и производительности сервера.