Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > .NET Framework > Forum > asp.net ajax ไม่มีอะไรง่ายไปกว่านี้แล้วเชื่อดิ ScriptManager , ScriptManagerProxy, Timer, UpdatePanel, UpdateProgress...



 

asp.net ajax ไม่มีอะไรง่ายไปกว่านี้แล้วเชื่อดิ ScriptManager , ScriptManagerProxy, Timer, UpdatePanel, UpdateProgress...

 



Topic : 041131

Guest




ajax

ScriptManager = ตัวจัดการ ajax script

ScriptManagerProxy = ตัวจัดการ ajax script สำหรับ page ที่เป็น child ของ ajax master page

Timer = ตัวตั้งเวลาอัตโนมัติ

UpdatePanel = พื้นที่ให้ ajax อัฟเดต

UpdateProgress = ไว้ทำรูปหมุนๆ ให้ณุ้ว่าเป็น ajax

AjaxTest.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AjaxTest.aspx.cs" Inherits="AjaxTest" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
                <asp:Button ID="Button1" runat="server" Text="Button" />            
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>
    </form>
</body>
</html>

AjaxTest.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class AjaxTest : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Button1.Click += new EventHandler(Button1_Click);   
    }

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


แค่นี้ก็เสร็จแล้ว



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-04-01 15:27:19 By : tungman View : 17548 Reply : 8
 

 

No. 1

Guest


ลองใส่รูป loading เพื่อความเท่

AjaxTest.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AjaxTest.aspx.cs" Inherits="AjaxTest" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
                <asp:Button ID="Button1" runat="server" Text="Button" />            
            </ContentTemplate>
        </asp:UpdatePanel>
        <asp:UpdateProgress ID="UpdateProgress1" runat="server">
            <ProgressTemplate>
                <asp:Image ID="Image1" ImageUrl="http://www.scharffenberger.com/images/loading.gif" runat="server" />
            </ProgressTemplate>
        </asp:UpdateProgress>
    </div>
    </form>
</body>
</html>

AjaxTest.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class AjaxTest : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Button1.Click += new EventHandler(Button1_Click);

        UpdateProgress1.DisplayAfter = 100;
        UpdateProgress1.Visible = true;
        UpdateProgress1.DynamicLayout = true;
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        System.Threading.Thread.Sleep(300); //ของหน่วงเวลาจะได้เห็น
        Label1.Text = DateTime.Now.ToLongTimeString();
    }
}







Date : 2010-04-01 15:33:59 By : tungman
 


 

No. 2

Guest


ใส่ event การ update ใน UpdatePanel (ขอเปลี่ยนจาก button เป็น timer)

AjaxTest.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AjaxTest.aspx.cs" Inherits="AjaxTest" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
        <asp:Timer ID="Timer1" Interval="1000" runat="server">
        </asp:Timer>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
            </Triggers>
            <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
            </ContentTemplate>
        </asp:UpdatePanel>         
        <asp:UpdateProgress ID="UpdateProgress1" runat="server">
            <ProgressTemplate>
                <asp:Image ID="Image1" ImageUrl="http://www.scharffenberger.com/images/loading.gif" runat="server" />
            </ProgressTemplate>
        </asp:UpdateProgress>
    </div>
    </form>
</body>
</html>

AjaxTest.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class AjaxTest : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Timer1.Tick += new EventHandler<EventArgs>(Timer1_Tick);

        UpdateProgress1.DisplayAfter = 100;
        UpdateProgress1.Visible = true;
        UpdateProgress1.DynamicLayout = true;
    }

    protected void Timer1_Tick(object sender, EventArgs e)
    {
        System.Threading.Thread.Sleep(100); //ของหน่วงเวลาจะได้เห็น
        Label1.Text = DateTime.Now.ToLongTimeString();
    }
}

Date : 2010-04-01 15:39:26 By : tungman
 

 

No. 3

Guest


แบบมีหลาย UpdatePanel

TestTimeTick.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TestTimeTick.aspx.cs" Inherits="TestTimeTick" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript">
    
      function pageLoad() {
      }
    
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
        
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="ShowBulletedList" EventName="Click" />
                <asp:AsyncPostBackTrigger ControlID="ShowListBox" EventName="Click" />
            </Triggers>
        </asp:UpdatePanel>
        
        <asp:UpdateProgress ID="UpdateProgress1" runat="server">
            <ProgressTemplate>
                <asp:Image ID="Image1" ImageUrl="http://www.scharffenberger.com/images/loading.gif" runat="server" />
            </ProgressTemplate>
        </asp:UpdateProgress>

        <asp:Button ID="ShowBulletedList" runat="server" Text="Button" />
        <asp:Button ID="ShowListBox" runat="server" Text="Button" />
        
        <asp:UpdatePanel ID="UpdatePanel2" runat="server">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
            </Triggers>
        </asp:UpdatePanel>
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </div>
    </form>
</body>
</html>

TestTimeTick.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class TestTimeTick : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        UpdatePanel1.UpdateMode = UpdatePanelUpdateMode.Conditional; //เวลามี UpdatePanel หลายๆ อัน ก็สามารถระบุได้ว่าให้ update อันไหน

        ShowBulletedList.Click += new EventHandler(ShowBulletedList_Click);
        ShowListBox.Click += new EventHandler(ShowListBox_Click);

        UpdateProgress1.DisplayAfter = 100;
        UpdateProgress1.Visible = true;
        UpdateProgress1.DynamicLayout = true;

        UpdatePanel2.UpdateMode = UpdatePanelUpdateMode.Conditional; //เวลามี UpdatePanel หลายๆ อัน ก็สามารถระบุได้ว่าให้ update อันไหน

        Button1.Click += new EventHandler(Button1_Click);
    }

    private ListItemCollection GetData()
    {
        ListItemCollection result = new ListItemCollection();
        result.Add(new ListItem("Test 1"));
        result.Add(new ListItem("Test 2"));
        result.Add(new ListItem("Test 3"));

        return result;
    }

    /// <summary>
    /// Displaying the information in a BulletedList
    /// </summary>
    protected void ShowBulletedList_Click(object sender, EventArgs e)
    {
        //add controls ลง updatepanel แบบ dynamic
        BulletedList blItems = new BulletedList();
        foreach (ListItem item in GetData())
            blItems.Items.Add(item);

        UpdatePanel1.ContentTemplateContainer.Controls.Clear();
        UpdatePanel1.ContentTemplateContainer.Controls.Add(blItems);
    }

    /// <summary>
    /// Displaying the information in a ListBox
    /// </summary>
    protected void ShowListBox_Click(object sender, EventArgs e)
    {
        //add controls ลง updatepanel แบบ dynamic
        ListBox lbItems = new ListBox();
        lbItems.Width = 200;
        lbItems.Height = 150;
        foreach (ListItem item in GetData())
            lbItems.Items.Add(item);

        UpdatePanel1.ContentTemplateContainer.Controls.Clear();
        UpdatePanel1.ContentTemplateContainer.Controls.Add(lbItems);
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        Label Label1 = new Label();
        Label1.Text = DateTime.Now.ToLongTimeString();

        UpdatePanel2.ContentTemplateContainer.Controls.Clear();
        UpdatePanel2.ContentTemplateContainer.Controls.Add(Label1);
    }
}

Date : 2010-04-01 15:43:18 By : tungman
 


 

No. 4



โพสกระทู้ ( 373 )
บทความ ( 0 )



สถานะออฟไลน์


+1 จัดไป

เพิ่ม ASP.NET AJAX LIBRARY

มี control ให้ใช้เพียบ ลองโหลดมาดูครับ
Date : 2010-04-01 17:27:13 By : numenoy
 


 

No. 5



โพสกระทู้ ( 34 )
บทความ ( 0 )



สถานะออฟไลน์


ยอดอีกแล้วครับพี่ tungman เอามาอีกนะครับของแบบนี้ รออ่านแต่ของพี่เลยผม
แต่ละอันนิดีๆๆทั้งนั้น อิๆ ทั้งเวลาพี่ Comment ด้วย ชอบๆ
Date : 2010-04-01 17:36:17 By : chakrit021
 


 

No. 6



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


มีข้อเสนอแนะ tungman logout แล้ว login ใหม่ จะได้ให้คะแนนได้

แล้วก็ตั้งเป็นกระทู้ อันเดียว แล้ว อัปเดท เอาเหมือนกระทู้ผม พอเยอะๆ เข้า เดี๋ยวพี่วินมาปักหมุนให้เอง

ปล. มีที่ง่ายกว่านี้นะ "ไม่ทำ"
Date : 2010-04-01 17:57:45 By : plakrim
 


 

No. 7

Guest


แบบว่าเสียดายอะครับ ได้ reply 888 แถมคะแนนยังเป็น spartan 300 อีก

หรือผมยึดมั่นถือมั่นมากเกินไปเนี่ย มันเป็นของนอกกายเนอะ ตายไปก็เอาไปไม่ได้

แต่ยังเสียดายอยู่ หูย สับสน สับสน สับสน สับสน
Date : 2010-04-01 20:00:36 By : tungman
 


 

No. 8



โพสกระทู้ ( 1,603 )
บทความ ( 1 )



สถานะออฟไลน์


Quote:
แบบว่าเสียดายอะครับ ได้ reply 888 แถมคะแนนยังเป็น spartan 300 อีก

หรือผมยึดมั่นถือมั่นมากเกินไปเนี่ย มันเป็นของนอกกายเนอะ ตายไปก็เอาไปไม่ได้

แต่ยังเสียดายอยู่ หูย สับสน สับสน สับสน สับสน


ออกบวชค่ะจะได้สงบพบทางสว่าง และขออนุโมทนาสาธุล่วงหน้าค่า จำเริญๆๆเทอญ อิอิ


ขอเสริมพี่ตึ๋งศรีมณีเด้งดึ๋งๆ นิดนึงค่ะ
เพราะไปช่วยงานอาจารย์มา ท่านเลยให้ไปติดตั้ง AJAX LIBRARY
ซึ่งเข้าใจง่ายๆคือ AJAX EXTENSION VERSION ถัดไปนั่นเอง
ซึ่งตัว AJAX LIBRARY นี้จะ build in ใน VSS 2010 ให้เลย
แต่เราสามารถไปดาวน์โหลดมาติดตั้งใน VSS 2008 ได้ค่ะ
เพิ่ม Control และ Extender 20 กว่าอัน
มีทั้ง ModalPopupExtender (Lightbox ของ jQuery) ,Rounded corner extender etc.


AJAX LIBRARY  DICUT

ที่ว่า AJAX EXTENSION ง่ายแล้ว เจ้า AJAX LIBRARY จะง่ายกว่ามี EFFECT มากกว่าด้วยค่ะ
ตอนนี้ขอนั่งอ่าน MS SQL SERVER ไปก่อนนะคะยังไม่ได้มีเวลาสุงสิงกะ AJAX LIBRARY เท่าไหร่
Date : 2010-04-02 11:24:48 By : blurEye
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : asp.net ajax ไม่มีอะไรง่ายไปกว่านี้แล้วเชื่อดิ ScriptManager , ScriptManagerProxy, Timer, UpdatePanel, UpdateProgress...
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่