[英]Runtime generated controls disabled for Async Postback asp.net
我想在运行时创建一些不能击中“异步回发”的项目。
实际上,我的网格视图中的每一行都有一个按钮。 该控件不能生成部分回发,而可以生成完整的回发(因为结果必须是报告的下载)。
实际上,我尝试了2种方式:
页面加载
通过以下方式将该项目添加到ScriptManager中:
ScriptManager.GetCurrent(本).RegisterPostBackControl(对照);
该代码被打了正确的时间,但是仍然生成了部分回发
关于项目生成
在这种情况下,我会执行以下操作:
var button =(Control)sender;
ScriptManager.GetCurrent(本).RegisterPostBackControl(按钮);
为什么这不起作用?
在这两种情况下,我都碰到了特定情况,并将控件“注册”为“完全回发”,那么我该如何获得部分回发?
谢谢
我不知道您所说的部分回发是什么意思,但是我想您正在尝试在按钮单击事件中执行某些操作,该事件要在页面加载后发生。 有一个快速的解决方法,在pageload事件中,您可以检查单击了哪个按钮。
if(IsPostBack){
clickedButtonID=Request.Form["__EVENTTARGET"];
}
我找到了一个可行的解决方案,并且不涉及任何特定的代码/替代。
我当时只专注于“自动生成”按钮,但是当我开始考虑区域和父母时,一切都很好。
作为解决方案,我只需将WHOLE GridView注册到脚本管理器,通过这种方式,内部的所有控制器都会生成完整的回发而不是部分回发。
在我的Page_Load中,我现在有:
ScriptManager.GetCurrent().RegisterPostBackControl(grd_Reports);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.