как мне тогда обрабатывать загрузку страницы?
Каждый постбэк использует новый экземпляр класса вашей страницы и полностью перестраивает страницу. Единственное, что отличается, это то, что некоторые элементы управления могут быть предварительно заполнены через ViewState. Вам не нужно повторять загрузку для любого из этих элементов управления.
Нужно ли знать, что вызвало обратную передачу?
ASP.Net позаботится об этом и запустит событие. Вам нужно только знать, является ли это постбэком, а может даже и не так (см. Следующую часть).
Нужно ли перезагрузить сетку и на page_load?
Да. Ну вроде. Вам необходимо повторно отобразить HTML для сетки в браузере. Хорошей новостью является то, что шансы на то, что данные вашей сетки уже находятся в viewstate, и это произойдет автоматически. Вам не нужно беспокоиться об этом самостоятельно.
Однако во многих случаях вы можете обнаружить, что лучше отключить режим просмотра для сеток и перезагрузить их на каждом постбеке в любом случае. Это связано с тем, что ViewState - это просто скрытый вход на вашей странице, который должен публиковаться (загружаться) на сервер при каждом запросе. Большинство интернет-пользователей имеют очень ограниченную пропускную способность при загрузке, поэтому большой ViewState может сделать ваш сайт вялым, даже если ваш сервер почти не потеет.
В зависимости от вашей ситуации вы могли бы добиться большего, если обменять некоторую избыточную производительность сервера на отзывчивость сайта, отключив ViewState в некоторых элементах управления. В этом случае вы всегда будете загружать сетку, и вам больше не нужно заботиться о том, является ли запрос обратной передачей.
В отличие от этого, если это сетевое приложение типа int ra , в котором пользователи обычно имеют локальные подключения Ethernet к вашему веб-серверу, трудно превзойти ViewState для балансировки скорости отклика и производительности сервера.