我在gridview中有一个文本框。我已经在其textchanged event
内写了一些代码。
<asp:TemplateField HeaderText="AdjAMT" ItemStyle-Width="50px" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:TextBox ID="grdAdjAMT" runat="server" AutoPostBack="true" Text='<%#Eval("ADJAMT") %>' OnTextChanged="grdAdjAMT_TextChanged"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
我想要的是动态为同一个文本框添加一个textchanged事件,也可以从函数内部调用后面的代码。两个textchanged事件的代码是相同的。代码如下 下面的文本更改事件在axpx代码中定义,如上所示:
protected void grdAdjAMT_TextChanged(object sender, EventArgs e)
{
}
以下是我想要调用动态添加文本changed event
protected void txtAmount_TextChanged(object sender, EventArgs e)
{
AdjustAmt();
}
private void AdjustAmt()
{
TextBox grddynAdjAMT = (TextBox)row.FindControl("grdAdjAMT");
grddynAdjAMT.TextChanged += grddynAdjAMT_TextChanged;
}
void grddynAdjAMT_TextChanged(object sender, EventArgs e)
{
//my code
}
我只能使用一个textchanged事件吗? 提前谢谢
答案 0 :(得分:0)
是的,您可以一次使用一个事件处理程序,但是您可以在运行时change event handler
像这样:
grddynAdjAMT.TextChanged -= grddynAdjAMT_TextChanged;//removing existing event handler
grddynAdjAMT.TextChanged += //add appropiate event handler