如果控件位于更新面板内,页面加载事件是否仍会触发?

1 asp.net listview updatepanel asp.net-ajax

我有一个页面,其中包含更新面板中的listview控件的一部分.当在列表视图中单击按钮时,我修改了一些数据并调用this.databind来刷新数据.即使控件位于更新面板内,看起来页面加载事件仍在触发.我想知道为什么页面加载事件被触发?是因为在listview_onitemcommand事件上调用this.databind?

Rex*_*x M 5

UpdatePanel调用服务器上的整个请求生命周期.这与您在普通同步页面中单击按钮完全相同.OnInit,OnLoad,Click_Handler和Render都执行.整个页面呈现为HTML,并通过UpdatePanel的AJAX调用发送回浏览器.唯一的区别是,当UpdatePanel收到结果(页面的整个HTML输出,就像正常一样)时,它只切出与自身相关的部分,并用该HTML替换DOM,并将其余部分抛弃.(它还更新/替换ViewState)