天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

asp.net UpdatePanel的簡單用法

UpdatePanel控制頁面的局部更新,這個更新功能依賴于scriptManger控件的EnablePartialRendering屬性,如果這個屬性設置為false局部更新會失去作用(scriptManger控件的EnablePartialRendering屬性的默認值為true不必刻意去設置)
下面是一個完整的UpdatePanel的結構: 
復制代碼 代碼如下:
<ASP:ScriptManager ID="ScriptManager1" runat="server" >
</ASP:ScriptManager>
<ASP:UpdatePanel ID="UpdatePanel1" runat="server" ChildrenAsTriggers="true" UpdateMode="Always" RenderMode="Block">
<ContentTemplate>
</ContentTemplate>
<Triggers>
<ASP:AsyncPostBackTrigger />
<ASP:PostBackTrigger />
</Triggers>
</ASP:UpdatePanel>

主要屬性:
1,ChildrenAsTriggers : 內容模板內的子控件的回發是否更新本模板(和UpdateMode的conditional有關)
2,UpdateMode : 內容模板的更新模式,有always和conditional倆種
always:每次ajax PostBack或者普通的PostBack都能引起panel的更新 如果UpdatePanel設置為Always時,不能使用上面的ChildrenAsTriggers屬性,強行使用會報錯,是updatepanel默認的更新模式,和設置trigger觸發器沒有直接的關系。
conditional:只有滿足如下某一條件時才更新panel的內容
如果設置UpdateMode="conditional" ChildrenAsTriggers="false"時候,子控件不允許觸發更新
1),當panel中的某個控件引發PostBack時
2), 當Panel指定的某個Trigger被引發時
3,RenderMode: 局部更新控件的呈現形式,倆中,Block(局部更新在客戶端以div形式展現)和Inline(局部更新以span的形式展現在客戶端)
子元素:
1,contentTemplate: 局部更新控件的內容模板,可以在其中添加任何控件
2,Triggers: 局部更新的觸發器,包括倆中:異步回發(AsyncPostBackTrigger) 用來實現局部更新。普通回發(PostBackTrigger)和普通的一養,不管是否使用了局部更新控件,都會引起頁面的全部更新。
下面是幾個簡單的例子:
1,updatepanel的updatemode設置為always
復制代碼 代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.ASPx.cs" Inherits="Default2" %>
<!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>
</div>
<ASP:ScriptManager ID="ScriptManager1" runat="server">
</ASP:ScriptManager>
<ASP:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<ContentTemplate>
<% =DateTime.Now.ToString()%>
<ASP:Button ID="Button1" runat="server" Text="UpdatePanelButton" />
</ContentTemplate>
</ASP:UpdatePanel>
<ASP:Button ID="Button2" runat="server" Text="Button" />
</form>
</body>
</html>

不管哪個按鈕,都會觸發更新,只不過外面的按鈕postback的時候頁面顯示回發而已 !
1,updatepanel的updatemode設置為conditional( ChildrenTriggers="false" 就是updatepanel中事件不觸發更新)
復制代碼 代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.ASPx.cs" Inherits="Default2" %>
<!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>
</div>
<ASP:ScriptManager ID="ScriptManager1" runat="server">
</ASP:ScriptManager>
<ASP:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false">
<ContentTemplate>
<% =DateTime.Now.ToString()%>
<ASP:Button ID="Button1" runat="server" Text="UpdatePanelButton" />
</ContentTemplate>
</ASP:UpdatePanel>
<ASP:Button ID="Button2" runat="server" Text="Button" />
</form>
</body>
</html>

下面介紹下updatePanel的觸發器Trigger
了解數據庫的人應該對觸發器這個概念比較清楚,Trigger對于UpdatePanel來說也是很關鍵的
開始簡單介紹了UpdatePanel的倆中觸發器asyncPostBackTrigger和PostBackTrigger的作用
這里用例子大概在稍微深入地介紹下:
1,普通回調觸發器(PostBackTrigger)
PostBackTrigger主要針對UpdatePanel模板內的子控件,因為當子控件被觸發時。它只會更新模版內的數據,模板外的控件不會發生變化.當需要更新全局 內容的時候就可以通過PostBackTrigger觸發器來實現頁面的全部回調。
下面是簡單例子:
復制代碼 代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.ASPx.cs" Inherits="Default2" %>
<!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>
</div>
<ASP:ScriptManager ID="ScriptManager1" runat="server">
</ASP:ScriptManager>
<ASP:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<ContentTemplate>
<% =DateTime.Now.ToString()%>
<ASP:Button ID="Button1" runat="server" Text="UpdatePanelButton" />
</ContentTemplate>
<Triggers>
<!--下面的注釋掉,點擊updatePanel內的button則只更新Panel內的時間,取消注釋責全部更新-->
<!-- <ASP:PostBackTrigger ControlID="Button1"/>-->
</Triggers>
</ASP:UpdatePanel>
<br />
<% =DateTime.Now.ToString()%>
<ASP:Button ID="Button2" runat="server" Text="Button" />
</form>
</body>
</html>

2,異步回調觸發器(AsyncPostBackTrigger)
是實現局部更新的關鍵,在觸發器內定義引起回發的控件和事件
例:
復制代碼 代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.ASPx.cs" Inherits="Default2" %>
<!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">
<ASP:ScriptManager ID="ScriptManager1" runat="server">
</ASP:ScriptManager>
<ASP:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<ContentTemplate>
<% =DateTime.Now.ToString()%>
</ContentTemplate>
<Triggers>
<ASP:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
</Triggers>
</ASP:UpdatePanel>
<br />
<% =DateTime.Now.ToString()%>
<ASP:Button ID="Button2" runat="server" Text="Button" />
</form>
</body>
</html>

運行了發現點擊button2的時候只更新了 updatepanel內部的時間
上面的例子也可以動態更新UpdatePanel的一些源代碼:
具體例子就不寫了下面 大概寫點主要代碼:
復制代碼 代碼如下:
protected void Page_Load(object sender, EventArgs e)
{
//獲取更新控件兒
UpdatePanel mapanel = UpdatePanel1;
//設置觸發模式
mapanel.UpdateMode = UpdatePanelUpdateMode.Conditional;
//顯示時間
Label1.Text = DateTime.Now.ToString();
//添加觸發
AsyncPostBackTrigger tri = new AsyncPostBackTrigger();
tri.ControlID = "Button2";
tri.EventName = "Click";
mapanel.Triggers.Add(tri);
}
先記錄這些~還望多多大蝦們多多指教

AspNet技術asp.net UpdatePanel的簡單用法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 伦理电影2499伦理片 | 回复术士勇者免费观看全集 | 在线免费观看毛片网站 | 秋霞网站一级一片 | 色偷偷成人网免费视频男人的天堂 | 中文无码熟妇人妻AV在线 | 国产97精品久久久天天A片 | 亚洲黄视频在线观看 | 日本后进式猛烈xx00动态图 | 短篇合集纯肉高H深陷骚 | 暖暖视频大全免费观看 | 九九热视频 这里有精品 | 嫩草伊人久久精品少妇AV网站 | 浪货嗯啊趴下NP粗口黄暴 | 在线观看黄色小说 | 精品国产午夜福利在线观看蜜月 | 公粗挺进了我的密道在线播放贝壳 | 秋霞成人午夜鲁丝一区二区三区 | 男生在床上脱美女 胸 | 午夜日韩久久影院 | 99久久久精品 | 手机在线免费观看毛片 | 伊人久久大香线蕉综合电影 | old胖老太fat bbw青年 | 亚洲日本va中文字幕久久 | 99久久精品免费看国产免费 | 欧美 日韩 无码 有码 在线 | 国产日韩在线欧美视频 | 小草高清视频免费直播 | 国产午夜视频 | 乌克兰16~18sex | 国产成人精品三级在线 | 又长又大又粗又硬3p免费视频 | 亲胸揉胸膜下刺激视频在线观看 | 亚洲区欧美日韩综合 | 伦理片在线线手机版韩国免费6 | 国产电影无码午夜在线播放 | 亚洲免费每日在线观看 | 欧美成人亚洲高清在线观看 | 福利片午夜 | 肉色欧美久久久久久久蜜桃 |