添加多个自定义控件

时间:2015-06-25 13:46:19

标签: asp.net controls

我有一个自定义控件(customContainer),可以容纳多个ConditionControl类型的自定义控件。当我单击customContainer控件中的按钮时,我想将另一个customControl添加到我的容器中。

asyncio.gather

这只能运作一次。所以我点击它一次,它添加了一个Condition控件但是它不再起作用了。我该如何解决这个问题?

编辑:我尝试将面板的控件集合保存到会话变量中,然后使用它来恢复控件,如下所示:

tasks

当我尝试添加一个新的控件protected void ImageButton1_Click(object sender, ImageClickEventArgs e) { CustomControlsPanel.Controls.Add(new LiteralControl("<br />")); ConditionControl myCc = (ConditionControl)LoadControl(@"~/ConditionControl.ascx"); CustomControlsPanel.Controls.Add(myCc); } 时,当我尝试执行foreach时出现错误

1 个答案:

答案 0 :(得分:-1)

这是因为每次点击按钮,它都会回发,删除第一个按钮并添加新按钮。为了解决这个问题,您可以阻止回发(通过像UpdatePanel之类的东西)或保留添加的ConditionControls的计数(如在会话中)并添加控件,就像您在会话中保留的计数器一样多