【问题标题】:Right order to add/remove controls to updatepanel on update在更新时向 updatepanel 添加/删除控件的正确顺序
【发布时间】:2013-12-15 11:38:44
【问题描述】:

我一直在尝试在更新时向更新面板添加/删除控件。这些控件根据页面会话中的信息动态填充。

Updatepanel_Load 事件已正确触发,但我更改的控件无法正确显示。它们只会在完整回发后显示!

现在我知道您需要一个onInit 事件来添加/更改页面上的控件,但这对于更新面板也是必需的吗?有人可以解释一下这样做的正确顺序吗?

立即订购:

  • 按钮点击
  • ajax 上的登录过程
  • OnInit
  • UpdatePanel1_Load(生成控件)
  • onInit.

因此,在完整回发之前,不会添加/更改任何控件。在没有完整回发的情况下,在更新面板中添加/更改控件的正确顺序/方法是什么?

【问题讨论】:

标签: c# javascript asp.net ajax init


【解决方案1】:

将异步回发添加到您的 updatePanel,例如:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Label ID="Label1" runat="server" Text="Init..."></asp:Label>
</ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="TextBoxTrigger" EventName="TextChanged" />
    </Triggers>
</asp:UpdatePanel>

【讨论】:

  • 添加触发器与处理程序和页面加载之间的线程同步无关。我需要页面加载等到外部处理程序完成。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-22
  • 1970-01-01
  • 2018-02-19
  • 2010-10-04
  • 2019-12-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多