我已经删除了我的其他答案-看到您现在描述的是与最初的答案完全不同的问题,完全保留我的答案,同时保留先前版本的代表,这似乎很愚蠢。
您将必须检查导致异步回调的事件,或者检查每个更新面板中控件的某些值,以帮助您确定更改了什么。
这是我决定不使用更新面板的关键原因之一,异步回发会导致几乎所有页面生命周期事件发生,并且使得很难真正看到像这样的复杂情况下发生的事情-
只有当我在个人网站上使用愤怒的更新面板时,才在数据网格上环绕以保存处理大量数据时重新加载整个页面的情况。
编辑添加:
只是试图提供帮助,一个快速的Google提出了这个建议(AJAX和ASP.NET
2.0回调框架):
哪个控件发起了请求?
在回发请求中,scriptManager
id作为参数运行。通常,该值是启动部分回发的控件的ID。格式为|。控件可以直接或通过UpdatePanel向scriptManager注册。scriptManager.AsyncPostBackSourceElementID属性将返回启动部分回发的控件的ID。语法示例:
scriptManager1=UpdatePanel1|Button1
该页面还详细介绍了生命周期以及流程中的各种挂钩。



