Panelen



Forumnavigering
Senast inloggade
RSS
Sponsorer
Artiklar > ASP.NET 1.x och 2.x

ASP.NET Ajax - UpdatePanel

Introduktion
UpdatePanel är en del utav ASP.NET Ajax som tillåter dig att uppdatera en del utav din sida vid postback utan att hela sidan uppdateras. Med andra ord så uppdateras enbart innehållet i din UpdatePanel och resten utav sidan förblir orörd.
I den här artikeln tänkte jag ta upp hur man kan skapa en ASP.NET Ajax projekt och använda en UpdatePanel.

Jag förutsätter att du har ASP.NET Ajax installerat, annars så finns det att ladda hem här  http://asp.net/ajax/downloads/default.aspx

Skapa ett projekt
Öppna VS 2005 och välj File -> New -> Website och sen så markerar du ASP.NET AjaxEnabled Web-Site.
VS 2005 ändrar och lägger till alla filer som behövs för att kunna använda ASP.NET Ajax och lägger även in asp:ScriptManager i Default.aspx.
Asp:ScriptManager är ett måste om du ska kunna använda ASP.NEt Ajax, använder du MasterPage så kan du lägga dit asp:ScriptManager i din MasterPage så slipper du lägga dit den i varje fil.

Projektet
För att visa hur det går till så ska vi skapa en två asp:Labels som visar DateTime.Now. En label i UpdatePaneln och en annan utanför:



<body>

    <form id="form1" runat="server">

        <asp:ScriptManager ID="ScriptManager1" runat="server" />

        <%--Våran UpdatePanel--%>

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>

                UpdatePaneln uppdaterades senast: <asp:Label ID="Label1" runat="server" /><br />

                <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Uppdatera" />

            </ContentTemplate>

        </asp:UpdatePanel>

        Sidan uppdaterades senast: <asp:Label ID="Label2" runat="server" />

    </form>

</body>


För att sedan i våran CodeFile så ger vi Label1 och Label2 DateTime.Now som text. Och när man trycker på Button1 så ger vi Label1 tiden igen:


protected void Page_Load(object sender, EventArgs e)

{

    Label1.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

    Label2.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

}

protected void Button1_Click(object sender, EventArgs e)

{

    Label1.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

}




Debugga och tryck på Button1 så ser ni att tiden i Label1 uppdateras men hela sidan uppdateras inte.
Hoppas denna artikeln gjorde så ni fick en blick i hur UpdatePaneln fungerar. Mer ASP.NET Ajax artiklar kommer.

Frågor och funderingar lämnas i forumet eller PM.
/ Timmie

Skapades: 2007-11-01 08:03:52
Skribent: Timmie
Lästs 875 gånger
Betyg: 0 (artikeln har endast 1 röster, det krävs minst 5 för ett betyg)

Kommentarer

mikael sa den 1 november 2007 kl 18:13:
Du borde skriva lite mer om dess funktionalitet, ex. updatemode, triggers mm.
Timmie sa den 2 november 2007 kl 01:40:
Min tanke var att skriva en till artikel med UpdateProgress, triggers och timer. updatemode hade jag helt och hållet glömt bort. :)
pbf sa den 3 juli 2008 kl 16:16:
Tillhör Tips och Trix. Inget ont mot skribenten i fråga.
© Copyright 2007-2009 Shadi Domat | Version 3.0 | Sidkarta | Policy