我通过单击链接按钮在页面中创建动态文本框。
但是,之后,如果页面被提交,我找不到动态创建的项目,因此无法将信息发送到数据库。
protected void lbAddTag_Click(object sender, EventArgs e)
{
for (int i = 0; i < 3;i++ )
{
CreateTextBox("txtTag-" + i.ToString());
}
}
private void CreateTextBox(string ID)
{
TextBox txt = new TextBox();
txt.ID = ID;
txt.Width = Unit.Pixel(300);
//txt.TextChanged += new EventHandler(OnTextChanged);
txt.AutoPostBack = false;
tagsPanel.Controls.Add(txt);
Literal lt = new Literal();
lt.Text = "<br /><br />";
tagsPanel.Controls.Add(lt);
}
如果我放:
foreach (Control c in tagsPanel.Controls)
{
if (c is TextBox)
{
lblError.Text += c.ClientID + " , ";
}
}
在 lbAddTag_Click 方法中,我可以看到这些项目,它们存在,但是如果我提交页面并尝试在数据库中插入值什么...
任何提示都非常感谢。