C# 将带有控件的整个布局从一个aspx页面复制到另一个页面-动态移动控件-ASP.Net
这是我的问题 我有一个主页main.aspx。此页面有一个“设置”按钮。单击后,我会在弹出窗口中加载另一个aspx页面settigns.aspx。现在在settings.aspx中,我允许用户动态添加控件。例如,用户可以创建5个文本框。当他把它保存在那里时,我需要把那个控件放到main.aspx 所以我需要将所有控件从一个页面移动到另一个页面。我想不出有用户控件的解决方案C# 将带有控件的整个布局从一个aspx页面复制到另一个页面-动态移动控件-ASP.Net,c#,asp.net,user-controls,dynamic,C#,Asp.net,User Controls,Dynamic,这是我的问题 我有一个主页main.aspx。此页面有一个“设置”按钮。单击后,我会在弹出窗口中加载另一个aspx页面settigns.aspx。现在在settings.aspx中,我允许用户动态添加控件。例如,用户可以创建5个文本框。当他把它保存在那里时,我需要把那个控件放到main.aspx 所以我需要将所有控件从一个页面移动到另一个页面。我想不出有用户控件的解决方案 对此有何想法?要在页面之间进行通信,必须将控件集合存储在会话、缓存或其他内容中,以便其他页面可以使用它。这可能行不通。您需要
对此有何想法?要在页面之间进行通信,必须将控件集合存储在会话、缓存或其他内容中,以便其他页面可以使用它。这可能行不通。您需要做的是在另一个页面上重新创建UI。因此,为页面提供文本框和值的数量,并让第二个页面重新创建它
将此构建逻辑放在用户控件中将非常有帮助,或者找到一种方法将它们保持在同一页面上,以利用这两种功能。将控件集合保持在会话中或以任何方式有害吗?控件是否绑定到页面实例?事实上,我刚刚尝试过,效果很好。但我有点不情愿,因为我担心在会话中存储控件集合会有任何负面影响。我同意。。。。会话是每个用户的,所以您必须小心,因为这可能会很快为许多用户最大化资源。如果您想使用这种方法,您需要做的是将它们复制到会话中,当您进入下一页时,立即从会话中获取它们,并将会话[“控件”]=null;把它们擦干净。嗯,又卡住了。我的会话模式是“SQL Server”,因此控件不可序列化。那可能不起作用。。。考虑将它们存储在缓存中,并将用户ID或当前会话ID追加到缓存密钥以使其唯一。