【发布时间】:2013-01-31 19:20:08
【问题描述】:
我有一个中继器,它的 ItemTemplate 包含一个 PlaceHolder,我在 ItemDataBound 上添加输入控件(ListBox、TextBox、CalendarExtender 等):
<asp:UpdatePanel ID="ReportParameterUpdatePanel" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<asp:Repeater ID="ReportParameterEditRepeater" OnItemDataBound="ReportParameterEditRepeater_ItemDataBound" runat="server">
<ItemTemplate>
<asp:PlaceHolder runat="server" ID="ParameterEntryPlaceholder"></asp:PlaceHolder>
</ItemTemplate>
</asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
如何从中继器内的这些文本框之一生成异步回发(在 TextChanged 上)?
控件是动态创建的,我只想在特定条件下创建回发,所以需要从后面的代码中完成。
我试过了:
- OnItemCommand(但这似乎只是用于按钮)
- ScriptManager.RegisterAsyncPostBackControl(似乎对 TextChanged 没有任何作用)
- UpdatePanel.Triggers.Add(new AsyncPostBackTrigger ...)(无法在中继器中找到 TextBox)
【问题讨论】:
-
您是在
OnLoad或OnInit中进行动态更改吗?事件必须在OnInit中设置,否则它们不会触发。 -
谢谢 - 这是我的错误!
标签: c# asp.net updatepanel postback repeater