Хорошо, я думал, что хорошо понял эти темы, но, думаю, нет, так что, надеюсь, кто-то здесь сможет это прояснить.
Page.IsAsync, кажется, сломан. Всегда возвращает false.
Но ScriptManager.IsInAsyncPostBack вроде бы работает, вроде.
Возвращает значение true во время приема-передачи для элементов управления внутри UpdatePanels. Это хорошо; Я могу сказать, если это частичный постбэк или обычный.
ScriptManager.IsInAsyncPostBack возвращает false, однако для асинхронных методов страницы. Почему это? Это не обычный постбэк, я просто вызываю публичный статический метод на странице.
Это вызывает проблему, потому что я также понял, что если у вас есть элемент управления с AutoPostBack = false, он не будет инициировать обратную передачу самостоятельно, но если у него есть обработчик событий на странице, этот код обработчика событий будет выполняться при следующей обратной передаче, независимо от того, как произошла обратная передача, ЕСЛИ значение изменилось.
то есть, если я настрою выпадающий список, а затем нажму на кнопку, код обработчика этого выпадающего списка сработает. Это нормально, за исключением того, что это также будет происходить во время вызовов метода страницы, и у меня нет возможности узнать разницу.
Есть мысли?