Chamar um popup modal com TargetControl em outro UpdatePanel em ASP.NET
-
09-09-2019 - |
Pergunta
Eu estou tentando chamar um Modal Popup, mas o TargetControl está em um UpdatePanel diferente de onde reside o ModalPopupExtender.
Aqui está o código:
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="LinkButton1" runat="server">LinkButton</asp:LinkButton>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="Panel1" runat="server">
Test
</asp:Panel>
<cc1:ModalPopupExtender ID="Panel1_ModalPopupExtender" runat="server"
DynamicServicePath="" Enabled="True" TargetControlID="LinkButton1" PopupControlID="Panel1">
</cc1:ModalPopupExtender>
</ContentTemplate>
</asp:UpdatePanel>
Quando eu executar a página o erro "Um extensor pode não estar em um UpdatePanel diferente do que o controle se estende." é mostrado.
Eu estou tentando colocar uma declaração Triggers na UpdatePanel2 mas nada muda:
<Triggers>
<asp:AsyncPostBackTrigger ControlID="LinkButton1" EventName="Click" />
</Triggers>
É possível fazer isso? Graças
Solução
Mover o extensor para o primeiro painel de atualização:
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="LinkButton1" runat="server">LinkButton</asp:LinkButton>
<ajaxToolkit:ModalPopupExtender ID="Panel1_ModalPopupExtender" runat="server"
DynamicServicePath="" Enabled="True" TargetControlID="LinkButton1" PopupControlID="Panel1">
</ajaxToolkit:ModalPopupExtender>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="Panel1" runat="server">
Test
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow