问题:带有UpdatePanel和占位符的向导控件的内容页面。 UpdatePanel上方是一个DropDownList。当用户更改下拉列表中的选择时,我需要在下拉列表下方显示不同的输入控件。当用户单击向导控件上的“下一步”时,我需要能够从这些动态控件中获取数据。在内容页面上通过DropDownList更改动态控件
我知道所有的动态控件都必须在OnInit方法中创建,以便在回发期间从这些控件中获取数据。但是,当下拉列表的SelectedIndexChanged事件被触发时,将调用OnInit方法...然后调用PageLoad ...并最终调用SelectedIndexChanged事件的处理程序。直到OnInit & PageLoad方法被调用之后,ViewState才被恢复,因此无法知道用户在OnInit被调用时在列表框中选择了什么内容......这正是我需要时创建动态控件。
所以......你如何解决这个问题?你只需要使用JavaScript编写整个页面,或大部分?
在此先感谢。
谢谢大卫。我以为我试过这个,并没有工作(我错了)。有一件事(对我来说)要记住的是,如果您使用用户控件进入更新面板占位符并且该用户控件具有导致回发的控件,则用户控件将被隐藏,因为父页面的下拉列表事件处理程序不会被调用,因为它不会导致回发。我解决了这个问题,让我所有的孩子用户控件公开一个公共事件,当它引发一个回传,通知父页面“取消隐藏”相应的占位符时,它会触发。 – 2010-11-04 18:57:26