将UpdatePanel的
ChildrenAsTriggers属性更改为
true。这将导致由UpdatePanel的子元素触发的任何回发更新其内容。
编辑 :刚刚意识到这
btn_Add是一个嵌套的控件,所以您将必须明确地将其称为
UpdatePanelTrigger。在ContentTemplate之后,将以下内容添加到您的UpdatePanel标记中:
<Triggers> <asp:AsyncPostBackTrigger ControlID="btn_Add" /> </Triggers>
编辑#2
:要防止发生异步回发时关闭模态弹出窗口,请在
UpdatePanelModalPopupExtender的PopupControlID指定的面板内部移动:
<asp:Panel ID="pnlpopup" runat="server"> <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true"> <ContentTemplate> <asp:ListBox ID="lst_allmembers" DataValueField="FirstName" runat="server" /> <asp:Button ID="btn_Add" runat="server" Text="Add" onClick="btn_Add_Click" /> <asp:ListBox ID="lst_grpmembers" runat="server" /> <asp:Button ID="btn_remove" runat="server" Text="Remove" /> <asp:Button ID="btnUpdate" CommandName="Update" runat="server" Text="Update" onClick="btnUpdate_Click" /> <asp:Button ID="btnCancel" runat="server" Text="Cancel" /> </ContentTemplate> </asp:UpdatePanel></asp:Panel>



