我尝试获取一些以编程方式插入的文本框(插入到 gridview 中)来进行 textChange 部分更新。它有点工作,但在我在这些文本框中键入一些文本后,它不会自动调用 textEntered() 方法。我得到一个线索,我可能需要使用 AJAX 和更新面板之类的东西,但我只是不完全理解它们在我正在尝试做的事情的上下文中是如何工作的。
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (!e.Row.Cells[4].Text.Equals(" ") && firstTime == false)
{
TextBox tb = new TextBox();
tb.Text = e.Row.Cells[4].Text;
tb.TextChanged += new EventHandler(textEntered);
textBoxArray.Add(tb);
int length = textBoxArray.Count - 1;
tb = (TextBox)textBoxArray[textBoxArray.Count - 1];
e.Row.Cells[4].Text = null;
e.Row.Cells[4].Controls.Add(tb);
Cache["textBoxArray"] = textBoxArray;
} firstTime = false;
}
protected void textEntered(object sender, EventArgs e)
{
lbl_test.Text += "test";//This line is for testing purposes
}