0
我有一个占位符的控制和选择用户控件,并将其添加到占位符.aspx页上下拉:添加和在运行时删除用户控件,在选择前面的控制应该被覆盖
if (dropdown.SelectedValue == "1")
{
UserControl UC = (UserControl)LoadControl("usercontrolpath");
placeholder.Controls.Add(UC);
}
我执行我的所有关于该用户的控制操作(通过重新创建它在每个回发),现在我想的是,当用户从下拉列表中其他一些选项说:
if (dropdown.SelectedValue == "2")
{
UserControl UC = (UserControl)LoadControl("Newusercontrolpath");
placeholder.Controls.Add(UC);
}
那么第一个用户控制应通过覆盖这个新的用户控件(老年人应该从页面中消失)。如果我做
在下拉列表中选择的指数变化,然后添加新的用户控件,然后当新的控件添加到占位符,我得到一个索引超出边界错误。
我该如何去做到这一点? 如果需要更多信息,请让我知道。
我尝试使用clear()也得到了相同的结果。 – Netnetter 2014-10-09 15:27:30
@ Netnetter:你在哪里重新创建回发控件?你必须在'Page_Init'或者(Page_Load'中的(最新)中做到这一点。然后将新控件添加到DropDownList的'SelectedIndexChanged'事件中。 – 2014-10-09 15:29:19
Am在Page_Load上做它,它在页面加载=>选择的索引更改=> clear()=> add() – Netnetter 2014-10-09 15:32:05