回发没有提出问题

时间:2009-07-01 18:52:00

标签: asp.net events dynamic user-controls postback

我有下一个情况:

  • 我在初始化期间加载动态控件,并且我确实正确初始化。
  • 我在回发前添加动态控件
  • 我不会在以后添加任何内容
  • 控制已加载并正确显示
  • 我按回发后没有任何反应

为什么我真的不知道......我尝试了一切。因此控制IS正确初始化。 __EVENTTARGET显示与触发它的linkbutton的UniqueId相同的路径。树中的所有控件都具有viewstate = true。所以,我真的不知道这是不行的。

有什么想法吗?我很绝望..我不知道..如果有人可以建议我,如果没有解决方案,那么我应该检查的东西会非常好。

3 个答案:

答案 0 :(得分:0)

这个问题仅适用于此页面,还是同一网站上的其他网页存在同样的问题?

我假设你在所有网页上遇到同样的问题。

可能与javascript不被允许有关。您可以尝试将站点添加到本地Intranet安全性,然后刷新页面。

答案 1 :(得分:0)

必须将动态控件添加回每个回发的控制树,以便触发事件。

答案 2 :(得分:0)

动态创建的控件不是其容器视图状态的一部分,因此将其设置为TRUE不会对情况产生任何影响,并且直到on_init调用完成后才会进行评估。

我会使用条件检查来回滚填充这些动态控件的逻辑if(!IsPostBack) { //Insert logic here }

如果您的动态控件接受来自用户的输入,或者需要访问其视图状态,那么您需要将此调用移至Page_Load方法,因为这是页面生命周期中首先评估viewstate的点。