新瓶旧酒ASP.NET AJAX(1) - 简单地过一下每个控件(
分类:计算机教程

美洲杯赔率 1美洲杯赔率 2<%美洲杯赔率 3@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Sample.aspx.cs"
美洲杯赔率 4    Inherits="Overview_Sample" Title="最简单的示例" %>
美洲杯赔率 5
美洲杯赔率 6<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
美洲杯赔率 7    <ul>
美洲杯赔率 8        <li>之前要有ScriptManager(包含了所有脚本资源),我把它放到母版页了。内容页如需不同配置则应使用ScriptManagerProxy。</li>
美洲杯赔率 9        <li>最简单的示例,拖个UpdatePanel进来。在 UpdatePanel内拖个GridView,并设置其数据源即可。 </li>
美洲杯赔率 10    </ul>
美洲杯赔率 11    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
美洲杯赔率 12        <ContentTemplate>
美洲杯赔率 13            <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
美洲杯赔率 14                DataSourceID ="SqlDataSource1">
美洲杯赔率 15                <Columns>
美洲杯赔率 16                   & nbsp;<asp:CommandField ShowEditButton="True" ShowSelectButton="True" />
美洲杯赔率 17                </Columns>
美洲杯赔率 18            </asp:GridView>
美洲杯赔率 19        </ContentTemplate>
美洲杯赔率 20    </asp:UpdatePanel>
美洲杯赔率 21    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<% $ ConnectionStrings:connstr %>"
美洲杯赔率 22        DeleteCommand="DELETE FROM [Products] WHERE [ProductID] = @ProductID" InsertCommand="INSERT INTO [Products]  ([ProductName], [QuantityPerUnit], [UnitPrice], [Discontinued]) VALUES  (@ProductName, @QuantityPerUnit, @UnitPrice, @Discontinued)"
美洲杯赔率 23        SelectCommand="SELECT  [ProductID], [ProductName], [QuantityPerUnit], [UnitPrice], [Discontinued] FROM  [Products]"
美洲杯赔率 24        UpdateCommand="UPDATE  [Products] SET [ProductName] = @ProductName, [QuantityPerUnit] = @QuantityPerUnit,  [UnitPrice] = @UnitPrice, [Discontinued] = @Discontinued WHERE [ProductID]  = @ProductID">
美洲杯赔率 25        <DeleteParameters>
美洲杯赔率 26            <asp:Parameter Name="ProductID" Type="Int32" />
美洲杯赔率 27        </DeleteParameters>
美洲杯赔率 28        <UpdateParameters>
美洲杯赔率 29            <asp:Parameter Name="ProductName" Type="String" />
美洲杯赔率 30            <asp:Parameter Name="QuantityPerUnit" Type="String" />
美洲杯赔率 31            <asp:Parameter Name="UnitPrice" Type="Decimal" />
美洲杯赔率 32            <asp:Parameter Name="Discontinued" Type="Boolean" />
美洲杯赔率 33            <asp:Parameter Name="ProductID" Type="Int32" />
美洲杯赔率 34        </UpdateParameters>
美洲杯赔率 35        <InsertParameters>
美洲杯赔率 36            <asp:Parameter Name="ProductName" Type="String" />
美洲杯赔率 37            <asp:Parameter Name="QuantityPerUnit" Type="String" />
美洲杯赔率 38            <asp:Parameter Name="UnitPrice" Type="Decimal" />
美洲杯赔率 39            <asp:Parameter Name="Discontinued" Type="Boolean" />
美洲杯赔率 40        </InsertParameters>
美洲杯赔率 41    </asp:SqlDataSource>
美洲杯赔率 42</asp:Content>
美洲杯赔率 43

2、UpdatePanel

介绍
ASP.NET AJAX就5个控件,分别是ScriptManager、ScriptManagerProxy、UpdatePanel、UpdateProgress和Timer。先简单地过一下。

2、 UpdatePanel
    ·UpdatePanel内放置需要被刷新的控件,如果是其内部控件事件导致其刷新,则不用另外做什么设置,因为UpdatePanel默认ChildrenAsTriggers="true"。
    ·如果是UpdatePanel外部控件导致其刷新的话,则应设置 Triggers。
    ·在Triggers内,如果AsyncPostBackTrigger未设置EventName,则为其指定控件的默认事件。
    ·UpdatePanel默认UpdateMode="Always",需要的话应设置UpdateMode="Conditional"。
    ·RenderMode="Block"对应div;RenderMode="Inline"对应span

注:以上示例涉及到后置代码的,其作用都是用来刷新相关的Label的,所以略掉了。

3、UpdateProgress

OK
[源码下载]

4、Timer

5、其它
    ·要在UpdatePanel中使用Validator的话,请参看http://blogs.msdn.com/mattgi/archive/2007/01/23/asp-net-ajax-validators.aspx
    ·内容页获取母版页的ScriptManager:ScriptManager.GetCurrent(Page)
    ·后置代码处对UpdatePanel编程,例: ScriptManager.GetCurrent(this).RegisterAsyncPostBackControl(this.Button1); ScriptManager.GetCurrent (this).RegisterPostBackControl(this.Button2); this.UpdatePanel1.Update();
    ·Internet Explorer Developer Toolbar下载
    ·Fiddler下载
    ·Web Development Helper下载


示例
1、最简单的示例

美洲杯赔率 44美洲杯赔率 45<%美洲杯赔率 46@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Timer.aspx.cs"
美洲杯赔率 47    Inherits="Overview_Timer" Title="Timer" %>
美洲杯赔率 48
美洲杯赔率 49<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
美洲杯赔率 50    <ul>
美洲杯赔率 51        <li>Interval:间隔时间,单位(毫秒);每一个间隔时间后将触发Tick事件 </li>
美洲杯赔率 52        <li>Timer要放在其所刷新的UpdatePanel内部;放外面的话要设置UpdatePanel的Triggers。</li>
美洲杯赔率 53    </ul>
美洲杯赔率 54    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
美洲杯赔率 55        <ContentTemplate>
美洲杯赔率 56            <fieldset>
美洲杯赔率 57                <legend>UpdatePanel1</legend>
美洲杯赔率 58                <p>
美洲杯赔率 59                   & nbsp;内部Timer
美洲杯赔率 60                   & nbsp;<asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Interval="1000">
美洲杯赔率 61                   & nbsp;</asp:Timer>
美洲杯赔率 62                </p>
美洲杯赔率 63                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
美洲杯赔率 64            </fieldset>
美洲杯赔率 65        </ContentTemplate>
美洲杯赔率 66    </asp:UpdatePanel>
美洲杯赔率 67</asp:Content>
美洲杯赔率 68

美洲杯赔率 69美洲杯赔率 70<%美洲杯赔率 71@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="UpdatePanel.aspx.cs"
美洲杯赔率 72    Inherits="Overview_UpdatePanel" Title="UpdatePanel" %>
美洲杯赔率 73
美洲杯赔率 74<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
美洲杯赔率 75    <ul>
美洲杯赔率 76        <li>UpdatePanel内放置需要被刷新的控件,如果是其内部控件事件导致其刷新,则不用另外做什么设置,因为UpdatePanel默认ChildrenAsTriggers="true"。</li>
美洲杯赔率 77        <li>如果是UpdatePanel外部控件导致其刷新的话,则应设置Triggers。</li>
美洲杯赔率 78        <li>在Triggers内,如果AsyncPostBackTrigger 未设置EventName,则为其指定控件的默认事件。</li>
美洲杯赔率 79        <li>UpdatePanel默认UpdateMode="Always",需要的话应设置UpdateMode="Conditional"。</li>
美洲杯赔率 80        <li>RenderMode="Block"对应div; RenderMode="Inline"对应span</li>
美洲杯赔率 81    </ul>
美洲杯赔率 82    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
美洲杯赔率 83        <contenttemplate>
美洲杯赔率 84            <fieldset>
美洲杯赔率 85                <legend>我在UpdatePanel里</legend>
美洲杯赔率 86                <asp:Label ID="Label1" runat="server" Text="我是 Label"></asp:Label>
美洲杯赔率 87            </fieldset>
美洲杯赔率 88        </contenttemplate>
美洲杯赔率 89        <triggers>
美洲杯赔率 90美洲杯赔率 91            <%美洲杯赔率 92--如果没设置 EventName,则取默认事件,Button的默认事件为Click-- %>
美洲杯赔率 93            <asp:AsyncPostBackTrigger ControlID="Button1" />
美洲杯赔率 94        </triggers>
美洲杯赔率 95    </asp:UpdatePanel>
美洲杯赔率 96    <p>
美洲杯赔率 97         </p>
美洲杯赔率 98    <fieldset>
美洲杯赔率 99        <legend>我在UpdatePanel外</legend>
美洲杯赔率 100        <asp:Button ID="Button1" runat="server" Text="按钮" OnClick="Button1_Click" />
美洲杯赔率 101    </fieldset>
美洲杯赔率 102    <p>
美洲杯赔率 103         </p>
美洲杯赔率 104美洲杯赔率 105    <%美洲杯赔率 106--嵌套UpdatePanel-- %>
美洲杯赔率 107    <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
美洲杯赔率 108        <contenttemplate>
美洲杯赔率 109            <fieldset>
美洲杯赔率 110                <legend>外围UpdatePanel</legend>
美洲杯赔率 111                <asp:Label ID="Label2" runat="server" Text="我是 Label"></asp:Label>
美洲杯赔率 112                <asp:Button ID="Button2" runat="server" Text="按钮" OnClick="Button2_Click" />
美洲杯赔率 113                <asp:UpdatePanel ID="UpdatePanel3" runat="server">
美洲杯赔率 114                   & nbsp;<ContentTemplate>
美洲杯赔率 115美洲杯赔率,                   & nbsp;    <fieldset>
美洲杯赔率 116                   & nbsp;        <legend>嵌套UpdatePanel</legend>
美洲杯赔率 117                   & nbsp;        <asp:Label ID="Label3" runat="server" Text="我是Label"></asp:Label>
美洲杯赔率 118                   & nbsp;        <asp:Button ID="Button3" runat="server" Text="按钮" OnClick="Button3_Click" />
美洲杯赔率 119                   & nbsp;    </fieldset>
美洲杯赔率 120                   & nbsp;</ContentTemplate>
美洲杯赔率 121                </asp:UpdatePanel>
美洲杯赔率 122            </fieldset>
美洲杯赔率 123        </contenttemplate>
美洲杯赔率 124    </asp:UpdatePanel>
美洲杯赔率 125</asp:Content>
美洲杯赔率 126

3、UpdateProgress
    ·默认,任何回发,当有延迟的时候则显示UpdateProgress里的ProgressTemplate。
    ·要与某UpdatePanel关联则设置 AssociatedUpdatePanelID属性。
    ·DynamicLayout为true则用“display:none;”隐藏;DynamicLayout为false则用 “visibility:hidden;”隐藏。
    ·默认情况下,例如有2个异步回发,如果第1个还没有执行完毕就执行第2个的话,则会先取消第1个异步回发。

美洲杯赔率 127美洲杯赔率 128<%美洲杯赔率 129@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="UpdateProgress.aspx.cs"
美洲杯赔率 130    Inherits="Overview_UpdateProgress" Title="UpdateProgress" %>
美洲杯赔率 131
美洲杯赔率 132<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
美洲杯赔率 133    <ul>
美洲杯赔率 134        <li>默认,任何回发,当有延迟的时候则显示 UpdateProgress里的ProgressTemplate。</li>
美洲杯赔率 135        <li>要与某UpdatePanel关联则设置 AssociatedUpdatePanelID属性。</li>
美洲杯赔率 136        <li>DynamicLayout为true则用“display:none; ”隐藏;DynamicLayout为false则用“visibility:hidden;”隐藏。</li>
美洲杯赔率 137        <li>默认情况下,例如有2个异步回发,如果第1 个还没有执行完毕就执行第2个的话,则会先取消第1个异步回发。</li>
美洲杯赔率 138    </ul>
美洲杯赔率 139    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
美洲杯赔率 140        <ContentTemplate>
美洲杯赔率 141            <fieldset>
美洲杯赔率 142                <legend>UpdatePanel1</legend>
美洲杯赔率 143                <asp:Label ID="Label1" runat="server" Text="Label1"></asp:Label>
美洲杯赔率 144                <br />
美洲杯赔率 145                <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
美洲杯赔率 146            </fieldset>
美洲杯赔率 147        </ContentTemplate>
美洲杯赔率 148    </asp:UpdatePanel>
美洲杯赔率 149    <asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel1"
美洲杯赔率 150        DynamicLayout="false">
美洲杯赔率 151        <ProgressTemplate>
美洲杯赔率 152            <p>
美洲杯赔率 153                UpdatePanel1更新中 美洲杯赔率 154
美洲杯赔率 155            </p>
美洲杯赔率 156        </ProgressTemplate>
美洲杯赔率 157    </asp:UpdateProgress>
美洲杯赔率 158    <p>
美洲杯赔率 159         </p>
美洲杯赔率 160    <asp:UpdatePanel ID="UpdatePanel2" runat="server">
美洲杯赔率 161        <ContentTemplate>
美洲杯赔率 162            <fieldset>
美洲杯赔率 163                <legend>UpdatePanel2</legend>
美洲杯赔率 164                <asp:Label ID="Label2" runat="server" Text="Label2"></asp:Label>
美洲杯赔率 165                <br />
美洲杯赔率 166                <asp:Button ID="Button2" runat="server" Text="Button" OnClick="Button2_Click" />
美洲杯赔率 167            </fieldset>
美洲杯赔率 168        </ContentTemplate>
美洲杯赔率 169    </asp:UpdatePanel>
美洲杯赔率 170    <asp:UpdateProgress ID="UpdateProgress2" runat="server" AssociatedUpdatePanelID="UpdatePanel2"
美洲杯赔率 171        DynamicLayout="true">
美洲杯赔率 172        <ProgressTemplate>
美洲杯赔率 173            <p>
美洲杯赔率 174                UpdatePanel2更新中 美洲杯赔率 175
美洲杯赔率 176            </p>
美洲杯赔率 177        </ProgressTemplate>
美洲杯赔率 178    </asp:UpdateProgress>
美洲杯赔率 179    <p>
美洲杯赔率 180         </p>
美洲杯赔率 181    <asp:UpdatePanel ID="UpdatePanel3" runat="server">
美洲杯赔率 182        <ContentTemplate>
美洲杯赔率 183            <fieldset>
美洲杯赔率 184                <legend>UpdatePanel3</legend>
美洲杯赔率 185                <asp:Label ID="Label3" runat="server" Text="Label3"></asp:Label><br />
美洲杯赔率 186                <asp:Button ID="Button3" runat="server" Text="Button" OnClick="Button3_Click" />
美洲杯赔率 187            </fieldset>
美洲杯赔率 188        </ContentTemplate>
美洲杯赔率 189    </asp:UpdatePanel>
美洲杯赔率 190    <asp:UpdateProgress ID="UpdateProgress3" runat="server">
美洲杯赔率 191        <ProgressTemplate>
美洲杯赔率 192            有延迟我就更新美洲杯赔率 193
美洲杯赔率 194        </ProgressTemplate>
美洲杯赔率 195    </asp:UpdateProgress>
美洲杯赔率 196</asp:Content>
美洲杯赔率 197

4、Timer
    ·Interval:间隔时间,单位(毫秒);每一个间隔时间后将触发 Tick事件。
    ·Timer要放在其所刷新的UpdatePanel内部;放外面的话要设置UpdatePanel的Triggers。

作者:webabcd

新瓶旧酒ASP.NET AJAX(1) - 简单地过一下每个控件(ScriptManager、ScriptManagerProxy、UpdatePanel、 UpdateProgress和Timer)

关键
1、ScriptManager 和ScriptManagerProxy
    ·一个页只能有一个ScriptManager(包含了所有脚本资源),要放到任何用到AJAX的控件的前面。
    ·如果把它放到母版页,而内容页需要与其不同的配置的话,则应在内容页使用ScriptManagerProxy。
    ·ScriptManager默认EnablePartialRendering="true"。
    ·ScriptManager的 AllowCustomErrorsRedirect="true"的时候,出现异常就会转到web.config里customErrors中defaultRedirect所指的地址。

[索引页]
[源码下载]

本文由美洲杯赔率发布于计算机教程,转载请注明出处:新瓶旧酒ASP.NET AJAX(1) - 简单地过一下每个控件(

上一篇:css3 transform 3d 使用css3创建动态3d立方体(html5实践 下一篇:没有了
猜你喜欢
热门排行
精彩图文
  • 新瓶旧酒ASP.NET AJAX(1) - 简单地过一下每个控件(
    新瓶旧酒ASP.NET AJAX(1) - 简单地过一下每个控件(
    % @ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Sample.aspx.cs"     Inherits="Overview_Sample" Title="最简单的示例" % asp:Content ID="Content1" 
  • JavaScript 多级联动select
    JavaScript 多级联动select
    请到这里看09-08-18更新版本 能够根据自定义的菜单数据和select,自动设置联级的下拉菜单,可定义默认值。 类似的多级浮动菜单网上也很多实例,但大部分
  • Bootstrap 2.2.2 发布,重要的 Bug 修复版本
    Bootstrap 2.2.2 发布,重要的 Bug 修复版本
    今天我们发布了 Bootstrap 2.2.2, 这是另外一个很大的 bugfix版本,主要是侧重于 CSS 和文档方面的问题修复,也有很小一部分的JS问题,主要包括: Docs: Asset
  • 每天一个linux命令 chgrp命令
    每天一个linux命令 chgrp命令
    [root@localhost test]# ll---xrw-r-- 1 root root 302108 11-13 06:03 log2012.log[root@localhost test]# chgrp -v bin log2012.log“log2012.log” 的所属组已更改为 bin[root@localhost test]# ll---xr
  • 我是如何跨专业零基础学习Python爬虫的(2 爬虫所
    我是如何跨专业零基础学习Python爬虫的(2 爬虫所
    列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型。列表中的每个元素都分配一个数字 2. Python 列表