Asp.net 如何将textchanged事件添加到代码隐藏中的文本框中
我通过代码隐藏创建了一个文本框,但无法向其中添加文本更改事件 这是我想要的Asp.net 如何将textchanged事件添加到代码隐藏中的文本框中,asp.net,textbox,Asp.net,Textbox,我通过代码隐藏创建了一个文本框,但无法向其中添加文本更改事件 这是我想要的 protected void insert(object sender, EventArgs e) { } protected void update(object sender, DayRenderEventArgs e) { TextBox tb = new TextBox(); tb.TextChanged += "insert"; e.Cell.Controls.Add(tb)
protected void insert(object sender, EventArgs e)
{
}
protected void update(object sender, DayRenderEventArgs e)
{
TextBox tb = new TextBox();
tb.TextChanged += "insert";
e.Cell.Controls.Add(tb);
}
我试过了,但不管用。
问题是什么,谢谢你应该传递一个委托(方法本身)而不是字符串(方法名称):
当您想要将处理程序绑定到代码隐藏中的事件时,您实际要做的是写入处理程序本身的名称,而不是字符串
protected void Page_Load(object sender, EventArgs e)
{
TextBox textBox = new TextBox();
textBox.TextChanged += new EventHandler(textBox_TextChanged);
}
protected void textBox_TextChanged(object sender, EventArgs e)
{
// Your code here
}
为了更清楚一点,假设C#有一个名为EventHandler
的列表,每当文本框中的文本发生变化(客户端的模糊事件),C#就会执行该列表中的所有方法。现在,如何将方法添加到该列表中?您可以使用+=
运算符。现在,如果要添加两个处理程序,可以编写:
protected void Page_Load(object sender, EventArgs e)
{
TextBox textBox = new TextBox();
textBox.TextChanged += new EventHandler(textBox_TextChanged);
textBox.TextChanged += new EventHandler(textBox_TextChanged2);
}
protected void textBox_TextChanged(object sender, EventArgs e)
{
// This method is the first in the list. So gets executed first.
}
protected void textBox_TextChanged2(object sender, EventArgs e)
{
// This method is the second in the list.
}
这对我不起作用。我的问题@
protected void Page_Load(object sender, EventArgs e)
{
TextBox textBox = new TextBox();
textBox.TextChanged += new EventHandler(textBox_TextChanged);
textBox.TextChanged += new EventHandler(textBox_TextChanged2);
}
protected void textBox_TextChanged(object sender, EventArgs e)
{
// This method is the first in the list. So gets executed first.
}
protected void textBox_TextChanged2(object sender, EventArgs e)
{
// This method is the second in the list.
}