Chapter 01 万事开头难,从了解AJAX开始学起 1
1-1 AJAX的用户观点 2
1-2 AJAX的开发人员观点 6
1-3 使用AJAX的思考 10
1-4 AJAX应用现状 15
结语 18
Chapter 02 迈向解密之路,ASP.NET 3.5 AJAX技术综述 19
2-1 什么是ASP.NET 3.5 AJAX 20
2-2 探讨ASP.NET 3.5 AJAX的架构 21
2-3 探讨ASP.NET 3.5 AJAX服务器端功能 21
2-4 探讨ASP.NET AJAX的客户端功能 24
2-5 关于AJAX Control ToolKit 25
结语 26
Chapter 03 实战的第一步,使用UpdatePanel控件异步局部更新页面 27
3-1 如何异步局部更新页面 28
3-1-1 整页更新vs异步局部更新 28
3-1-2 实现异步局部更新 34
范例1 异步更新的日期选择界面 39
范例2 异步更新的日期选择界面 42
范例3 异步的步进式界面 44
范例4 异步的产品列表查看界面 46
范例5 异步的订货金额总和查看界面 49
范例6 异步的2D饼图查看界面(ObjectDataSource+LINQ+GridView+.ashx) 52
范例7 异步的3D饼图查看界面(ObjectDataSource+LINQ+GridView+.ashx) 59
范例8 异步的添加、修改与删除数据界面(DetailsView+LinqDataSource) 64
范例9 异步的导航、添加、修改与删除数据界面(ListView+LinqDataSource) 70
范例10 异步的分组数据查看界面(LinqDataSource分组实现+嵌套ListView) 78
范例11 异步的分组数据查看界面(LinqDataSource分组实现+将GridView嵌套在ListView当中) 83
范例12 异步的可折叠式分组数据查看界面(JavaScript+LinqDataSource分组实现+嵌套ListView控件) 85
3-2 探讨UpdatePanel控件的运行方式 94
3-3 探讨UpdatePanel控件的使用模式 95
范例13 示范如何在模板中使用UpdatePanel控件 95
3-4 探讨UpdatePanel控件内容的更新时机 98
范例14 异步的简易购物车界面(ListView+ListView+LINQ+.ashx) 100
3-5 探讨UpdatePanel控件的触发器(Triggers) 104
范例15 示范定义UpdatePanel控件的Triggers属性 107
范例16 示范定义UpdatePanel控件的Triggers属性 107
范例17 异步男女平均工资2D饼图查看界面 109
范例18 异步男女平均工资3D饼图查看界面 111
范例19 异步的一对多界面 112
范例20 异步的书籍目录查看界面(ListView+ListView) 114
范例21 异步的产品数据搜索界面 117
范例22 异步的自行车产品查看界面 122
范例23 示范如何协调两个UpdatePanel控件之间的互动 128
范例24 异步的格式化与数据列累加界面 132
范例25 异步的添加、修改与删除数据界面(含删除确认功能) 134
范例26 异步的添加、修改与删除数据界面(含删除确认功能) 134
范例27 结合GridView与DetailsView的异步添加、修改与删除数据界面(含删除确认功能) 134
范例28 示范如何更新其他UpdatePanel控件的内容而不更新本身的内容——非常重要!! 139
范例29 示范何时需要将UpdatePanel的触发器设置成由其内部的控件事件来引发(ListView+ListView) 140
3-6 何时需要使用触发器PostBackTrigger 143
范例30 示范如何于UpdatePanel中使用FileUpLoad控件 144
范例31 搭配使用FileUpload与UpdatePanel控件来制作具备照片查看和编辑功能的添加、修改与删除数据界面(ADO.NET或LINQ) 146
3-7 如何以嵌套方式使用UpdatePanel控件 155
范例32 以嵌套方式查看产品类别与产品数据 159
范例33 嵌套的购物车 160
范例34 动态更改照片显示比例 170
3-8 如何在母版页面中使用UpdatePanel控件 175
范例35 示范如何在母版页面中使用ScriptManager控件 175
范例36 示范使用母版页面上的控件来局部更新内容页面内的UpdatePanel控件中的内容 176
范例37 示范使用母版页面上的控件来局部更新内容页面内的UpdatePanel控件中的内容 183
范例38 示范如何在内容页面中使用ScriptManagerProxy控件 185
3-9 哪些控件不兼容UpdatePanel控件 189
范例39 搭配使用TreeView与UpdatePanel控件(使用LINQ提取数据) 190
结语 196
Chapter 04 一切随心所欲,探讨UpdatePanel的编程功能 197
4-1 如何以编程方式更新一个UpdatePanel控件 198
范例1 用程序代码实现更新UpdatePanel控件 198
范例2 以程序代码实现更新UpdatePanel控件 201
范例3 以编程方式局部更新工资数据与2D饼图 203
范例4 以编程方式局部更新产品类别照片与产品数据 207
范例5 异步的自行车产品目录——重要!! 213
范例6 异步的照片相簿——重要!! 222
范例7 异步的水平滚动相簿(使用全新的ListView控件)——非常重要!! 230
范例8 示范通过调用Update方法来灵活地显示与更新信息 240
范例9 异步的2D柱形图查看界面 242
4-2 如何以编程方式创建一个UpdatePanel控件 248
范例10 示范如何动态为页面添加一个UpdatePanel控件 248
范例11 示范如何整齐排列动态添加到页面中的UpdatePanel控件的内容 250
范例12 示范如何动态为页面添加多个UpdatePanel控件 252
范例13 示范如何动态为页面添加多个UpdatePanel控件 258
范例14 示范如何动态为页面添加包含数据绑定控件的UpdatePanel控件 259
4-3 如何在自定义控件中启用局部更新功能 263
范例15 示范创建一个启用局部更新功能的自定义控件 264
4-4 自定义UpdatePanel控件的错误处理 271
范例16 示范如何自定义局部更新期间的错误处理 271
结语 276
Chapter 05 漫步于异步之间,探索PageRequestManager 277
5-1 什么是PageRequestManager 278
5-2 如何取得PageRequestManager类的实例 278
5-3 客户端页面生命周期事件 279
5-4 如何取消异步回发 282
范例1 示范如何取消一个正在执行的异步回发 282
范例2 示范如何让一个异步回发拥有较高的优先级 289
范例3 示范采用默认的“先进后出”的优先级处理模式 297
5-5 如何让UpdatePanel控件动起来 298
范例4 示范如何更新UpdatePanel控件并让它晃动 299
范例5 示范如何只让特定的UpdatePanel控件产生晃动效果 303
5-6 自定义局部更新的错误处理 311
范例6 示范如何自定义局部更新的错误处理 312
范例7 示范如何自定义局部更新的错误处理 316
结语 318
Chapter 06 别让用户干着急,善用UpdateProgress控件 319
6-1 自定义UpdateProgress控件的内容 320
6-2 了解UpdateProgress控件的解释方式 320
6-3 探讨UpdateProgress控件的显示时机 320
范例1 异步数据与照片查看界面(含进度提示) 322
范例2 异步邮件发送界面(含进度提示) 329
范例3 各部门男女平均工资的3D饼图查看界面(含进度提示) 332
范例4 异步平行输入输出界面(含进度提示) 337
6-4 用JavaScript程序代码来显示与隐藏UpdateProgress控件 342
范例5 异步的章节目录提取界面(含进度提示与取消查询功能) 343
6-5 如何动态添加UpdateProgress控件 348
范例6 示范动态添加UpdateProgress控件 348
结语 350
Chaprer 07 定时操作的最佳利器,善用Timer控件 351
7-1 Timer控件的运行机制 352
7-2 Timer控件的使用模式 352
7-3 Timer控件的摆放位置及其影响 352
7-4 Timer控件范例集锦 359
范例1 定时显示性能计数器 359
范例2 定时更新多个统计图 365
范例3 自动播放相簿 370
结语 378
附录A 范例光盘使用说明 379
A-1 安装SQL Server 2005 Express Edition 380
A-2 安装范例数据库并复制范例网站 380
A-3 使用页面范例 381
A-4 视频讲座 381