Hi all,
I created an user control with an update panel inside it. This user control is shown with an modalpopupextender. Inside this user control I have an Ok button that set some sessions and closes the modalpopup.
I need a way to fire an event that executes a code behind after modal popup be closed. .
How can I do that ?
This is my User control that is inside an ascx file:
<asp:panel id="Panel_Selecionar_Localizacao" style="display: block" runat="server" ScrollBars="Auto"><div class="Div_Painel_MSGBOX"><div id="PopupHeader4" class="Div_Painel_MSGBOX_Cabecalho"><% Response.Write(ClassesGlobais.wNomeSistema)%></div><div class="Div_Painel_MSGBOX_Corpo"><br /><div class="Texto_Padrao_Menu" style="width:500px"><asp:UpdatePanel ID="Meio" runat="server" UpdateMode="Conditional"><ContentTemplate><asp:HiddenField ID="HiddenCodLocalizacao" runat="server" /><div style="font-size:small;">Localização Atual</div><div><asp:TextBox ID="txtLocalizacao" runat="server" CssClass="TextBox_Padrao" Width="492px"></asp:TextBox></div> <br /><div class="Div_Painel_MSGBOX_Botoes"><asp:Button ID="cmdPesquisar" runat="server" Text="Pesquisar" Font-Bold="True" CssClass="CommandButton_Padrao" /><asp:Button ID="cmdNova" runat="server" Text="Nova" Font-Bold="True" CssClass="CommandButton_Padrao" /><asp:Button ID="cmdApagar" runat="server" Text="Apagar" Font-Bold="True" CssClass="CommandButton_Padrao" /></div><br /> <div style="max-height:500px; overflow-y:auto; border:2px solid green; min-height:200px" ><asp:TreeView ID="TreeLocalizacoes" runat="server" EnableClientScript="False"
ImageSet="Arrows" ShowLines="True"><HoverNodeStyle Font-Underline="True" ForeColor="#5555DD" /><NodeStyle Font-Names="Tahoma" Font-Size="10pt" ForeColor="Black"
HorizontalPadding="5px" NodeSpacing="0px" VerticalPadding="0px" /><ParentNodeStyle Font-Bold="False" /><SelectedNodeStyle Font-Underline="True" ForeColor="#5555DD"
HorizontalPadding="0px" VerticalPadding="0px" /></asp:TreeView> </div> </ContentTemplate> </asp:UpdatePanel></div> </div><div class="Div_Painel_MSGBOX_Botoes"><asp:Button ID="cmdLocalizacoesOK" runat="server" Text="Ok" /><asp:Button ID="cmdLocalizacoesCancel" runat="server" Text="Cancelar" /></div></div></asp:panel>This is the code behind of ok button:
Protected Sub cmdLocalizacoesOK_Click(sender As Object, e As System.EventArgs) Handles cmdLocalizacoesOK.Click
Session("Localizacao") = Me.txtLocalizacao.Text
Session("CodLocalizacao") = Me.HiddenCodLocalizacao.Value
End Sub
And this is the code in page where user control is used:
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %><%@ Register Tagprefix="gm" Tagname="general_messages" Src="Biblioteca.ascx" %><asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"
EnableScriptGlobalization="True"></asp:ToolkitScriptManager><gm:general_messages ID="General_messages1" runat="server" /> <asp:modalpopupextender id="mpeSelecionaLocalizacao" runat="server"
TargetControlID="General_messages1$cmdInvisivel0"
CancelControlID="General_messages1$cmdLocalizacoesCancel"
popupcontrolid="General_messages1$Panel_Selecionar_Localizacao"
popupdraghandlecontrolid="General_messages1$PopupHeader4"
backgroundcssclass="Fundo_Ao_Exibir_Painel" ></asp:modalpopupextender> And this is the code that I want to execute after close the user control:
Me.txtLocalizacao.Text = Session("Localizacao")
Me.HiddenCodLocalizacaoAtual.Value = Session("CodLocalizacao")I tried to put the code above in a mpeSelecionaLocalizacao_Unload event but didn´t work.
And I don´t know if is possible to execute a local page sub/function from inside a user control.
Anyone could help me ?
Thanks again ...
Marcio Branco.