下面写的代码显示了某个条件的文本框。但是当我点击另一个不相关的按钮或链接时,dissapears.i需要它在我在网页上进行其他活动时保持可见
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
TextBox new_textbox = new TextBox();
if (DropDownList1.Text.Equals("OFF"))
{
new_textbox.ID = "txt" + 1;
PlaceHolder1.Controls.Add(new_textbox);
Label5.Visible = true;
new_textbox.Visible = true;
}
else
{
Label5.Visible = false;
}
}
答案 0 :(得分:1)
之前已经问过这个问题: Dynamically added controls in Asp.Net
您只是在某种情况下添加此控件,特别是在DropDownList1.Text.Equals("OFF")
时。你可以改为在这种情况下设置一个静态控件吗?
根据msdn的Add Controls to an ASP.NET Web Page Programmatically:
控件通常会在页面中添加到页面中 初始化阶段。有关页面阶段的详细信息,请参阅ASP.NET页面 生命周期概述。
引用链接到ASP.NET Page Life Cycle Overview。
您必须小心动态添加控件,请参阅此msdn页面关于Dynamic Web Server Controls and View State。