假设我有一个树视图,其中每个树节点包含一组不同用户控件的 id。当用户点击一个节点时,这些控件应该被加载到页面中。据我了解 ASP 页面生命周期,应在初始化阶段添加动态控件,稍后将触发回发事件。
因此,如果在我需要添加控件之后发生树视图单击事件,如何根据用户回发事件动态添加控件?
编辑:我尝试了 ArronLS 的建议:
我所做的是将节点值添加到会话数组中,并在我执行初始化时使用它来选择要加载到占位符控件的控件的表单元素。在树视图单击事件上,我更新会话数组中的节点,清除占位符中的旧表单元素,并将新的表单元素添加到控件中。当页面再次加载时,它现在应该在初始化时找到节点,因此可以避免视图状态问题。
现在我还没有完全测试这一点,但是还有另一篇类似的帖子讨论了视图状态可能导致的问题。他们提出了一种解决方案,该解决方案在 Init 控件中轮询上下文的 Request[] 部分(在他们的情况下为 Dropbox),手动处理一些回发功能。
我的新问题是如何使用请求数组访问树视图中的选定节点?