占位符控制需要双回发

时间:2009-06-18 14:47:04

标签: c# asp.net

这是一个有趣的问题。有问题的页面是向导页面。这是场景 -

  1. 用户点击链接按钮即可转到向导的第2步。 (无法避免回发。基于URL的导航不是一种选择。)
  2. 用户点击单选按钮/链接按钮/需要回发以进行客户端 - 服务器交互的任何控件。
  3. 页面重新加载,好像没有任何反应。
  4. 用户重复步骤2.事情正常。
  5. 我做的是这个 -

    我只有一个页面用于向导的所有步骤。根据该步骤,将适当的控件加载到页面中。此控件将添加到OnLoad事件中的占位符控件。在OnInit或OnPreRender中这样做不起作用。这个添加步骤引入了我上面描述的奇怪行为。

    有什么想法吗?

3 个答案:

答案 0 :(得分:0)

由于您在运行时向页面添加控件以使向导显示在一个页面上,因此我认为这是重新排列某些代码的简单问题。

请参阅this article at CodeProject - 特别是在“演练6:视图状态和动态控件”一节中讨论视图状态和动态控件的部分。

答案 1 :(得分:0)

非常简单,您必须在每个回发上重新添加控件,重新附加事件处理程序并为动态加载的控件提供相同的Id。

答案 2 :(得分:0)

该应用程序使用自定义控件框架。该问题与框架有关。不得不重新设计方法。