在回发htmlgeneric控件上,在asp.net中删除其子控件,为什么?
我有一个htmlgeneric控件,在运行时我会在其中添加控件,但当我单击任何按钮时,添加的控件就会消失。需要在每次回帖中创建动态创建的控件。如果要维护和恢复他们的ViewState,还需要给他们一个ID 例如,这将在第一次加载页面时显示在回发htmlgeneric控件上,在asp.net中删除其子控件,为什么?,asp.net,Asp.net,我有一个htmlgeneric控件,在运行时我会在其中添加控件,但当我单击任何按钮时,添加的控件就会消失。需要在每次回帖中创建动态创建的控件。如果要维护和恢复他们的ViewState,还需要给他们一个ID 例如,这将在第一次加载页面时显示文本框,但在任何后续页面加载时,控件将丢失: protected void Page_Init(object sender, EventArgs e) { if (!IsPostBack) { TextBox newControl
文本框
,但在任何后续页面加载时,控件将丢失:
protected void Page_Init(object sender, EventArgs e)
{
if (!IsPostBack)
{
TextBox newControl = new TextBox()
{
ID = "newControl"
};
SomeControl.Controls.Add(newControl);
}
}
但是,如果在每次回发时使用相同的Id创建控件,则该控件将使用其文本进行维护:
protected void Page_Init(object sender, EventArgs e)
{
TextBox newControl = new TextBox()
{
ID = "newControl"
};
SomeControl.Controls.Add(newControl);
}
这是一篇关于如何处理的好文章。Add最好在page_init中重新创建它们,以便它们像静态控件一样自动填充(前提是ID与您所说的匹配)