Conditional Updates Partial Refresh – AJAX in ASP.NET – यदि हम हमारे Page पर एक से अधिक UpdatePanel Controls Place करते हैं और प्रत्येक UpdatePanel Control पूरी तरह से Self-Contained होता है, तो हम इन UpdatePanel Controls को पूरी तरह से Independently Update होने के लिए Configure कर सकते हैं और इस Configuration के रूप में हमें केवल Panel.UpdateMode Property को “Always” के स्थान पर “Conditional” मान से Set करना होता है।
परिणामस्वरूप जब एक बार हम ये Configuration कर देते हैं, उसके बाद जिस UpdatePanel Control द्वारा Asynchronous Request को Perform किया जाता है, Response भी केवल उसी Control को प्राप्त होता है।
इसे समझने के लिए हम हमारे पिछले Example को ही निम्नानुसार Modify कर सकते हैं, जिसमें एक नहीं बल्कि तीन UpdatePanel Controls हैं:
[code] File Name: Default.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AJAX.Default" %> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { Label1.Text = DateTime.Now.ToLongTimeString(); Label2.Text = DateTime.Now.ToLongTimeString(); Label3.Text = DateTime.Now.ToLongTimeString(); } </script> <!DOCTYPE html> <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:ScriptManager> <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:UpdatePanel ID="UpdatePanel2" runat="server"> <ContentTemplate> <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label> <asp:Button ID="Button2" runat="server" Text="Button" /> </ContentTemplate> </asp:UpdatePanel> <asp:UpdatePanel ID="UpdatePanel3" runat="server"> <ContentTemplate> <asp:Label ID="Label3" runat="server" Text="Label"></asp:Label> <asp:Button ID="Button3" runat="server" Text="Button" /> </ContentTemplate> </asp:UpdatePanel> </div> </form> </body> </html> [/code]
जब हम इस Page को Run करते हैं, तो हमें निम्नानुसार Output Page प्राप्त होता है:
हम देख सकते हैं कि हम इस Page पर दिखाई देने वाले तीनों Buttons में से चाहे जिस भी Button को Click करें, तीनों ही Label Controls में दिखाई देने वाला समय Update हो जाता है। लेकिन जब हम हमारे Webpage के Code को निम्नानुसार Modify करते हैं, जिसमें प्रत्येक UpdatePanel Control के साथ UpdateMode Property को “Conditional” Value से Set किया गया होता है:
[code] File Name: Default.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AJAX.Default" %> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { Label1.Text = DateTime.Now.ToLongTimeString(); Label2.Text = DateTime.Now.ToLongTimeString(); Label3.Text = DateTime.Now.ToLongTimeString(); } </script> <!DOCTYPE html> <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:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> <asp:Button ID="Button1" runat="server" Text="Button" /> </ContentTemplate> </asp:UpdatePanel> <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label> <asp:Button ID="Button2" runat="server" Text="Button" /> </ContentTemplate> </asp:UpdatePanel> <asp:UpdatePanel ID="UpdatePanel3" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:Label ID="Label3" runat="server" Text="Label"></asp:Label> <asp:Button ID="Button3" runat="server" Text="Button" /> </ContentTemplate> </asp:UpdatePanel> </div> </form> </body> </html> [/code]
तो इस बार इसी Modified Webpage को Run करने पर हमें निम्नानुसार Output Page प्राप्त होता है:
जहां User जिस Button को Click करता है, उससे Associated Label Control ही Current Time से Update होता है।
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Core ASP.NET WebForms with C# in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Core ASP.NET WebForms in Hindi | Page:647 | Format: PDF