ASP.NET动态控制回发中的数据交换

时间:2011-07-08 14:01:15

标签: asp.net dynamic controls custom-controls postback

请原谅我这个问题的质量可能很低,因为我不是网络开发人员,所以我现在可能没有一些显而易见的事情,也不知道谷歌会做些什么。我认为问题必须有一些简单的解决方案,但我现在已经挣扎了两天,所以我觉得自己非常愚蠢: - )。

我有一个自定义控件,它是一组复选框,根据在页面OnLoad事件中设置的属性动态添加。我在页面上有两个这样的控件,第二个控件项应该基于在第一个控件中选择的项目。

问题是,我无法弄清楚,如何在构建第二个控制器以将数据传递给它之前,在第一个控件中选择了哪些盒子来自动注册?

3 个答案:

答案 0 :(得分:1)

看看这个。 http://forums.asp.net/t/1440174.aspx

由于你动态构建它们,它们并不像webforms那样容易找到,如果你将它们添加到页面并连接事件等等。

您将查看Request.Forms列表,并通过它搜索您想要的任何控件。 我相信复选框就像单选按钮一样,只有在选中时它们才会返回,这很好,因为你想知道检查了哪些。

答案 1 :(得分:1)

我使用了与此问题的已接受答案相同的解决方案:Dynamically Change User Control in ASP.Net,只需为自定义控件中的每个动态创建的CheckBox分配唯一ID即可。不是我想要的干净解决方案,但至少它可以工作。

答案 2 :(得分:0)

您可以在移动到下一页之前将数据保存在ViewState,QueryString或Session中,然后您可以根据它进行修改。