ASP.NET, AjaxExtension, el UpdatePanel y los Triggers

Continuando con el artículo ASP.NET, AjaxExtension y el UpdatePanel que escribí hace algun tiempo y viendo un comentario he decido poner un ejemplo del uso de los triggers y explicar para que se usan.

Un trigger es un "binding" que específica que evento de un control causará la acualización del UpdatePanel.

Continuando con el ejemplo, usemos este código

<form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server" />
    <asp:Label ID="LabelPage" runat="server" Text="Hora de la pagina"></asp:Label>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
            <asp:Label ID="LabelUpdatePanel" runat="server" Text="Hora del panel"></asp:Label>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="En el panel" />
        </ContentTemplate>
    </asp:UpdatePanel>
    <asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="Fuera del panel" />
</form>

protected void Page_Load(object sender, EventArgs e)
{
LabelPage.Text = DateTime.Now.ToString();
LabelUpdatePanel.Text = DateTime.Now.ToString();
}

protected void Button1_Click(object sender, EventArgs e)
{
LabelUpdatePanel.Text = DateTime.Now.ToString();
}

protected void Button2_Click(object sender, EventArgs e)
{
LabelUpdatePanel.Text = DateTime.Now.ToString();
}

 

Como vemos al hacer click en "Button2" se actualiza todo el contenido de la página. Nuestro objetivo es que el evento "Click" del control "Button2" sólo actualice el contenido del UpdatePanel, para evitar que se refresque toda. Hacer esto es bastante simple y tan sólo hay que añadir esto a nuestro UpdatePanel.

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
...
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
</Triggers>
</asp:UpdatePanel>

Con esto vemos que el evento Click sólo actualiza el contenido del panel. Así haremos que eventos de controles que no están en el UpdatePanel lo actualicen.

Saludos y hasta la próxima entrega.

Published martes, 01 de julio de 2008 9:12 by Indigo

Comments

# re: ASP.NET, AjaxExtension, el UpdatePanel y los Triggers

martes, 01 de julio de 2008 9:32 by Juanillo

Gracias por la información...

# re: ASP.NET, AjaxExtension, el UpdatePanel y los Triggers

martes, 29 de julio de 2008 19:17 by Mauricio Mendoza

Hola que tal?

yo estoy comenzando a utilizar las tools de ajax, pero tengo un problema con el web.config, es posible me ayudes para saber que líneas agregar?

Te lo agradezco…

# re: ASP.NET, AjaxExtension, el UpdatePanel y los Triggers

martes, 29 de julio de 2008 19:18 by Mauricio Mendoza

Hola que tal?

yo estoy comenzando a utilizar las tools de ajax, pero tengo un problema con el web.config, es posible me ayudes para saber que líneas agregar?

Te lo agradezco…

# re: ASP.NET, AjaxExtension, el UpdatePanel y los Triggers

martes, 29 de julio de 2008 21:13 by Indigo

Hola, la configuración del web.config para hacer funcionar Ajax la puedes encontrar en esta web asp.net/.../ConfiguringASPNETAJAX.aspx

Si necesitas algun ejemplo no dudes en pedirlo.

Leave a Comment

(required) 
(required) 
(optional)
(required) 
Powered by Community Server (Non-Commercial Edition), by Telligent Systems