我有一个自定义控件(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时出现错误
答案 0 :(得分:-1)
这是因为每次点击按钮,它都会回发,删除第一个按钮并添加新按钮。为了解决这个问题,您可以阻止回发(通过像UpdatePanel之类的东西)或保留添加的ConditionControls的计数(如在会话中)并添加控件,就像您在会话中保留的计数器一样多