如何从UpdatePanel中的按钮强制完全回发?

And*_*ena 69 .net c# asp.net asp.net-ajax

如何从UpdatePanel中的按钮强制完全回发?

Thi*_*ise 86

您可以使用UpdatePanel 的Triggers属性来注册触发完整回发的操作.

PostBackTrigger对象添加到该属性,包含需要触发完整回发的控件的ControlID.

<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server">
    <ContentTemplate>
        ...
    </ContentTemplate>
    <Triggers>
        <asp:PostBackTrigger ControlID="myFullPostBackControlID" />
    </Triggers>
</asp:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)


Evi*_*lDr 48

只是添加这个,因为没有其他人.可以在一行代码中的代码隐藏中执行此操作,而无需使用上述任何方法.把它放在page_load中:

Visual Basic

ScriptManager.GetCurrent(Me).RegisterPostBackControl(myButtonID)
Run Code Online (Sandbox Code Playgroud)

C#

ScriptManager.GetCurrent(this).RegisterPostBackControl(myButtonID);
Run Code Online (Sandbox Code Playgroud)

  • 非常好,经过几个小时的搜索,终于有了解决方案.问题是我的所有控件(更新面板和按钮)都是在后面的代码中创建的,因此无法设置postbacktrigger.谢谢! (2认同)
  • 你应该能够.创建控件后,您可以使用AddHandler为响应的子例程创建触发器 (2认同)
  • 我是页面的视觉基础.我认为在C#中你可以使用`this`或`page` (2认同)

Ase*_*tam 13

这里:

使用PostBackTrigger控件启用UpdatePanel内的控件以导致回发而不是执行异步回发.

 <Triggers>
    <asp:PostBackTrigger ControlID="controlID" />
 </Triggers>
Run Code Online (Sandbox Code Playgroud)