首页>参考读物>计算机科学与技术>软件与程序设计

ASP.NET AJAX经典范例168(VC#版)
作者 : 章立民研究室
出版日期 : 2007-08-10
ISBN : 7-111-21845-6
定价 : 79.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 611
开本 : 16开
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

图书特色

图书序言

某日看了读者在Blog上的留言,表示他为了购买本研究室的ASP.NET AJAX著作而四处奔波(因为当时书籍刚出版,店头还未完全铺货),内心深觉感动。从1990年至今,虽然我的技术写作已历经数十寒暑,然而读者朋友们的支持与鼓励,却总是让我激动不已,心中充满无限感激,成为我持续前进的最大动力。在此,不仅要表达我们的感谢,也期盼您在阅读书中内容之后,不吝给我们更多的建议与指教。
  从2007年3月7日的“微软AJAX开发日”开始,我算是重新回到台前吧!有人说我是“复出”,其实我从来没离开过这一行,只是鲜少露脸。我想,未来与读者朋友们除了以文会友之外,更能面对面的交流,直接倾听大家的需求与建言。就算不能来个武林大会,也要来个华山论剑吧!
  “章立民研究室”现在就好比一株小草,要想变成大树,在前方的道路上仍有更多的困难等着我们去克服。如果没有读者朋友们的灌溉与支持,这一过程将很难平顺。在快速变迁的IT技术之路上,孤独是必然的,压力也是必然的,衷心期望所有身在此行的朋友,都能获得家人的认同、体谅以及支持,勇敢且平顺地走下去,成就美好未来。
  最后,谨代表章立民研究室所有成员,感谢所有读者朋友们对我们的支持与厚爱,并恳请继续给我们批评与指教。谢谢大家。


  章立民
  2007/5/15
  http://liminzhang.cnblogs.com

作者简介

章立民研究室:章立民研究室: 章立民先生是台湾非常知名和资深的技术作家。他在台湾微软公司担任顾问与讲师的时间长达15年,对微软开发工具与数据库管理系统等技术都有非常深入的研究。章立民先生不仅拥有丰富的实务经验,经常与第一线的开发人员接触并交流,深知从业人员的真正需求。因此,不仅他的图书著作受到大家的肯定与喜爱,他所主讲的研讨会更是深获好评。 为了能够质与量并重,撰写出更多的优质书籍,并为两岸信息文化事业贡献一份心力,章立民先生在2006初正式成立了“章立民研究室”并担任技术总监,亲自审校所有书籍,期许通过团队的力量,提供更多的好书给广大的读者;也希望借此促进良性竞争,提升信息图书的整体质量。 章立民研究室的所有成员有几项特色,第一,在相关信息领域必须有六年以上的实务经验;第二,必须参与或主持数项具代表性的项目;第三,必须同时专精Visual Basic与Visual C# 程序设计语言;第四,对数据库技术必须有相当程度的认识;最后一项,就是必须拥有高度的热诚以及无私分享的精神。 目前,“章立民研究室”的成员中,有人甚至已在美国从事项目开发10年以上,并且已经具备项目经理人的职位。他们在章立民先生的号召之下,投入研究室的写作行列。如此高水平的成员,让广大读者对“章立民研究室”拥有极高的期待。

图书目录


第1章  万事开头难,从了解AJAX开始学起
1.1  AJAX的用户观点 1
1.2  AJAX的开发人员观点 3
1.3  使用AJAX的思考 6
1.4  AJAX应用现状 9
结语 10
第2章  迈向解密之路,ASP.NET AJAX技术综述
2.1  什么是ASP.NET AJAX 12
2.2  探讨ASP.NET AJAX的架构 13
2.3  探讨ASP.NET AJAX服务器端功能 14
2.4  探讨ASP.NET AJAX的客户端功能 15
2.5  关于ASP.NET AJAX Control Toolkit 15
结语 15
第3章  实现的第一步,使用UpdatePanel异步局部更新页面
3.1  如何异步局部更新页面 16
3.1.1  整页更新vs异步局部更新 17
3.1.2  实现异步局部更新 19
页面范例1-异步更新的日期选取界面 22
页面范例2-异步更新的日期选取界面 24
页面范例3-异步的步进式界面 24
页面范例4-异步的产品列表查看界面 25
页面范例5-异步的订货金额总和查看界面 27
页面范例6-异步的2D饼图查看界面 29
页面范例7-异步的3D饼图查看界面 33
页面范例8-异步的添加、修改与删除数据界面 37
3.2  探讨UpdatePanel控件的运作方式 41
3.3  探讨UpdatePanel控件的使用模式 41
页面范例-示范如何在模板中使用UpdatePanel控件 41
3.4  探讨UpdatePanel控件内容的更新时机 42
页面范例-异步的购物车界面 43
3.5  探讨UpdatePanel控件的触发器 45
页面范例1-示范定义UpdatePanel控件的Triggers属性 48
页面范例2-示范定义UpdatePanel控件的Triggers属性 48
页面范例3-异步男女平均薪资2D饼图查看界面 49
页面范例4-异步男女平均薪资3D饼图查看界面 50
页面范例5-异步的一对多界面 50
页面范例6-异步的书籍目录查看界面 51
页面范例7-异步的产品数据搜索界面 53
页面范例8-异步的自行车产品查看界面 54
页面范例9-示范如何协调两个UpdatePanel控件之间的互动 56
页面范例10-异步的格式化与数据列求和界面 57
页面范例11-异步的添加、修改与删除数据界面(一) 58
页面范例12-异步的添加、修改与删除数据界面(二) 58
页面范例13-结合GridView与DetailsView的异步添加、修改与删除数据界面(含删除确认功能) 59
页面范例14-示范如何更新其他UpdatePanel控件的内容而不更新本身的内容-非常重要!! 59
页面范例15-示范何时需要将UpdatePanel的触发器设定成由其内部的控件事件来引发 61
3.6  何时需要使用触发器类型PostBackTrigger 63
页面范例1-示范如何在UpdatePanel中使用FileUpLoad控件 64
面面范例2-搭配使用FileUpload与UpdatePanel控件来制作具备照片查看和编辑功能的添加、修改与删除数据界面 65
3.7  如何以嵌套方式使用UpdatePanel控件 70
页面范例1-以嵌套化方式查看产品类别与产品资料 73
页面范例2-嵌套化的购物车 74
页面范例3-动态变更照片显示比例 81
3.8  如何在主控页面中使用UpdatePanel控件 83
页面范例1-示范如何在主控页面中使用ScriptManager控件 83
页面范例2-示范使用主控页面上的控件来局部更新内容页面内的UpdatePanel控件中的内容 84
页面范例3-示范使用主控页面上的控件来局部更新内容页面内的UpdatePanel控件中的内容 88
页面范例4-示范如何在内容页面中使用ScriptManagerProxy控件 89
3.9  哪些控件不兼容于UpdatePanel 91
页面范例-搭配使用TreeView与UpdatePanel控件 93
第4章  一切尽其在我,探讨UpdatePanel的可编程功能
4.1  如何以编程方式更新一个UpdatePanel控件 95
页面范例1-以程序代码来实现更新UpdatePanel控件(一) 95
页面范例2-以程序代码来实现更新UpdatePanel控件(二) 98
页面范例3-以编程方式局部更新薪资数据与2D饼图 99
页面范例4-以编程方式局部更新产品类别照片与产品资料 102
页面范例5-异步的自行车产品目录—重要!! 106
页面范例6-异步的照片相簿—重要!! 114
页面范例7-异步的水平滚动相簿—非常重要!! 121
页面范例8-示范通过调用Update方法来灵活地显示与更新信息 127
4.2  如何以编程方式创建一个UpdatePanel控件 129
页面范例1-示范如何动态为页面添加一个UpdatePanel控件 130
页面范例2-示范如何整齐排列动态添加页面中的UpdatePanel控件的内容131
页面范例3-示范如何动态为页面添加多个UpdatePanel控件(一) 133
页面范例4-示范如何动态为页面添加多个UpdatePanel控件(二) 137
页面范例5-示范如何动态为页面添加内含数据绑定控件的UpdatePanel控件138
4.3  如何在自定义控件中启用局部更新功能 142
页面范例-示范创建一个启用局部更新功能的自定义控件 142
4.4  自定义UpdatePanel控件的错误处理 148
页面范例-示范如何捕捉与显示错误信息 148
4.5  使用JavaScript程序代码来自定义UpdatePanel控件的错误处理150
页面范例-示范如何自定义局部更新期间的错误处理 150
第5章  悠游于异步之间,探索PageRequestManager
5.1  什么是PageRequestManager 154
5.2  如何取得PageRequestManager的实例 154
5.3  客户端页面生命周期事件 155
5.4  如何取消异步回送 158
页面范例1-示范如何取消一个正在执行中的异步回送 158
页面范例2-示范如何让一个异步回送拥有较高的优先级 164
页面范例3-示范采用默认的“后者为赢”的优先级处理模式 169
5.5  如何让UpdatePanel控件动起来 171
页面范例1-示范如何更新UpdatePanel控件并让它晃动 171
页面范例2-示范如何只让特定的UpdatePanel控件产生晃动效果 173
5.6  自定义局部更新的错误处理 176
页面范例1-示范如何自定义局部更新的错误处理 177
页面范例2-示范如何自定义局部更新的错误处理 180
第6章  别让用户干着急,善用UpdateProgress控件
6.1  自定义UpdateProgress控件的内容 182
6.2  了解UpdateProgress控件的转译方式 182
6.3  探讨UpdateProgress控件的显示时机 183
页面范例1-异步数据与照片查看界面 184
页面范例2-异步邮件发送界面 189
页面范例3-各部门男女平均薪资的3D饼图查看界面 192
页面范例4-异步平行输入输出界面 196
6.4  使用JavaScript程序代码来显示与隐藏UpdateProgress控件 199
页面范例-异步的章节目录提取界面 199
第7章  定时操作的最佳利器,善用Timer控件
7.1  Timer控件的运作机制 203
7.2  Timer控件的使用模式 203
7.3  Timer控件的摆放位置与其影响 204
7.4  Timer控件范例集锦 208
页面范例1-定时显示性能计数器 209
页面范例2-定时更新多个统计图 213
页面范例3-自动播放相簿 216
第8章  酷炫效果营造者,探讨AJAX Control Toolkit(上)
8.1  如何将AJAX Control Toolkit控件添加到Visual Studio 2005工具箱 222
8.2  如何添加AJAX Control Toolkit控件的命名空间 225
8.3  探讨控件与扩展器的差异 226
8.4  探讨“可折叠面板”与“可折叠”控件 227
页面范例1-如何使用“可折叠”控件展开或收缩内容 230
页面范例2-在页面问卷中,使用可折叠控件以免版面过长 233
页面范例3-示范使用可折叠控件的数据绑定功能,动态绘制柱形图 233
页面范例4-将可折叠控件绑定至ObjectDataSource,通过Web服务存取XML格式的留言数据文件 234
页面范例5-使用SqlDataSource作为可折叠控件的数据源,并搭配多种Control Toolkit 235
页面范例6-使用JavaScript为“可折叠控件”添加新属性,使其看起来如同“可收缩面板” 237
8.5  形影不离 239
页面范例-如何使用“形影不离”扩展器显示服务器状态 240
8.6  动画集锦 243
8.6.1  使用XML声明式语法设定动画集锦 243
页面范例-如何使用“动画集锦”扩展器制作“淡出”效果 247
8.6.2  同时或循序播放动画 248
页面范例1-如何使用Parallel与Sequence标记组合出不同的动画249
页面范例2-先使用Sequence标签,然后再使用Parallel标签来产生复合式的“爆炸”动画 250
8.6.3  结合“动作”的动画 252
页面范例1-结合“动作”的动画 253
页面范例2-实现“自动输入完成”来查询书籍数据,并播放“动画”以显示相关信息 256
8.7  自动输入完成 260
页面范例-实现姓名与地址数据的自动输入完成 262
8.8  日历扩展器 267
页面范例1-示范“日历”扩展器的使用模式 269
页面范例2-示范“日历”扩展器来编辑日期类型字段 270
8.9  级联下拉菜单 271
页面范例1-使用“级联下拉菜单”查询订单内容 272
页面范例2-邮政编码选取界面...完全真实数据!!! 277
8.10  可收缩面板 281
页面范例1-示范使用“可收缩面板”来收缩或展开数据内容 283
页面范例2-示范使用“可收缩面板”制作书籍目录 284
页面范例3-示范使用“可收缩面板”展开与折叠统计图表 284
页面范例4-示范如何使用水平式可收缩面板 285
页面范例5-在可折叠控件中应用水平式可收缩面板 286
8.11  确认按钮 287
页面范例-示范使用“确认按钮”再次确认是否执行特定功能 287
8.12  拖拽面板 289
页面范例-示范使用“拖拽面板” 289
8.13  下拉菜单 290
页面范例-创建具备Windows SharePoint Server风格的动态下拉菜单 290
8.14  阴影面板 292
页面范例-使用“阴影面板”让页面画面更专业 293
8.15  动态填充 294
页面范例1-使用“动态填充”通过Web服务取得并显示实时天气
现况 295
页面范例2-使用页面方法搭配“动态填充”控件读取RSS文章 298
8.16  文本框过滤器 301
页面范例1-使用文本框过滤器—简易计算器 301
页面范例2-如何使用文本框过滤器检查所输入的个人资料是否合乎规定 304
8.17  停靠菜单 305
页面范例1-使用停靠菜单来修改与删除员工数据 306
页面范例2-使用停靠菜单显示存储于数据库的产品的相片 309
8.18  列表搜索 313
页面范例1-使用ListSearchExtender查询邮政编码所在的县市 314
页面范例2-使用“列表搜索”快速找到特定的选项 315
第9章  酷炫效果营造者,探讨AJAX Control Toolkit(下)
9.1  探讨输入掩码与输入掩码验证器 316
页面范例-示范如何在DetailsView中,使用“输入掩码”与“输入掩码验证器” 321
9.2  强制弹出 323
页面范例1-使用“强制弹出”提供变更样式的弹出菜单 324
页面范例2-使用“强制弹出”显示相片信息 326
9.3  互斥复选框 326
页面范例-使用“互斥复选框”进行问卷调查 327
9.4  拒绝机器人行为 329
页面范例1-如何使用基本的拒绝机器人行为 331
页面范例2-在“拒绝机器人行为”控件中,利用JavaScript进行检测 332
页面范例3-在留言板中,为拒绝机器人行为添加DOM来避免刷屏 335
9.5  数值调整器 338
页面范例1-示范在GridView中使用“数值调整器”来编辑字段值 340
页面范例2-示范如何为“数值调整器”动态添加枚举值 340
页面范例3-调用Web服务来取得递增与递减值 342
9.6  分页项目符号列表 343
页面范例-示范如何使用分页项目符号列表 344
9.7  密码强度性 344
页面范例-示范如何使用“密码强度”扩展器 347
9.8  弹出控件 348
页面范例-示范在GridView控件中使用“弹出控件”扩展器 349
9.9  评级 352
页面范例-示范如何使用“评级”控件 353
9.10  顺序重排列表 354
页面范例-待办事项,可自行拖拽事项决定优先级 356
9.11  可调整大小控件 358
页面范例1-示范如何使用“可调整大小控件” 359
页面范例2-示范如何使用“可调整大小控件”来随意调整GridView控件中的柱形图 360
9.12  圆角 362
页面范例-示范在异步相簿中,使用“圆角”扩展器 363
9.13  滑片 363
页面范例1-使用滑片来调整图片的高度与宽度:由服务器端控制 365
页面范例2-使用滑片来调整图片的高度与宽度:通过JavaScript 367
9.14  相簿播放 368
页面范例1-“相簿播放”扩展器使用示范:逐一指定相片来源 369
页面范例2-“相簿播放”扩展器使用示范:由文件夹取得相片来源 370
9.15  索引标签 371
页面范例-示范如何使用索引标签 373
9.16  水印文本框 375
页面范例-“水印文本框”扩展器使用示范 375
9.17  双态按钮 376
页面范例-双态按钮使用示范 377
9.18  更新面板的动画效果 377
页面范例1-示范如何使用“更新面板动画效果”扩展器赋予UpdatePanel动画效果 378
页面范例2-示范如何使用“更新面板动画效果”扩展器赋予相簿淡入效果 379
9.19  外显型对话框验证器 380
页面范例-示范如何使用“外显型对话框验证器” 381
第10章  JavaScript换新装,注入OOP新灵魂
10.1  面向对象功能综述 382
10.2  如何使用命名空间与类 384
实现演练 387
页面范例-示范如何使用命名空间与类 391
10.3  如何使用继承 396
页面范例1-示范如何继承JavaScript类 396
页面范例2-示范如何继承JavaScript类 398
页面范例3-示范如何操作父类及派生子类 403
页面范例4-示范如何继承AJAX Control Toolkit的动画类(一) 407
页面范例5-示范如何继承AJAX Control Toolkit的动画类(二) 410
10.4  如何使用接口 413
页面范例1-示范如何定义与使用类和接口 414
页面范例2-示范如何使用类继承与接口 417
页面范例3-示范如何使用接口变化类功能 422
10.5  如何使用枚举 428
页面范例1-示范如何使用枚举 429
页面范例2-示范如何使用类与枚举 431
10.6  如何使用反射 432
页面范例-示范如何使用类与反射 433
10.7  探讨客户端页面生命周期事件 436
10.7.1  探讨重要的客户端类 437
10.7.2  为客户端事件编写事件处理函数 437
10.7.3  如何使用页面的load与unload事件 437
10.7.4  如何使用其他客户端类的事件 437
10.7.5  客户端事件表列 438
10.7.6  客户端事件执行顺序 439
页面范例-具体查看客户端页面生命周期事件引发顺序 441
10.8  探讨如何引用JavaScript文件 445
页面范例1-示范引用独立存在的Animation.js与Timer.js来播放动画 446
页面范例2-示范引用AjaxControlToolkit.dll组件中的Animation.js与Timer.js来播放动画 448
10.9  探讨Array类型扩展 448
10.10  探讨Boolean类型扩展 449
10.11  探讨Date类型扩展 449
10.12  探讨Error类型扩展 449
10.13  探讨Number类型扩展 450
10.14  探讨Object类型扩展 450
10.15  探讨String类型扩展 450
第11章  外部资源的异步整合,探讨如何于客户端JavaScript调用Web服务
11.1  异步通信层功能综述 452
11.1.1  关于AJAX 452
11.1.2  善用JSON 453
页面范例1-客户端序列器与服务器还原序列器 453
页面范例2-服务器序列器与客户端还原序列器 459
11.1.3  送出HTTP请求 462
页面范例-使用WebRequest对象来实现GET与POST Web请求 462
11.2  客户端与服务器间的通信 466
11.2.1  客户端架构 466
11.2.2  服务器架构 467
11.3  客户端类型简介 468
11.4  服务器类型简介 469
11.5  什么是Web服务 469
11.6  如何将Web服务公开给JavaScript 470
11.6.1  公开给JavaScript调用的Web服务所需满足的条件 471
11.6.2  如何在页面中注册JavaScript所要调用的Web服务 472
页面范例1-使用JavaScript调用Web服务来执行异步数据库查询 474
页面范例2-使用JavaScript调用Web服务时的错误处理 477
页面范例3-如何使用HTTP GET verb来调用一个Web服务方法 479
页面范例4-使用JavaScript调用一个会返回XmlDocument对象的Web服务方法 481
页面范例5-结合JavaScript调用Web服务方法与ASP.NET AJAX Control Toolkit的缩放式
异步查询界面 484
11.7  如何让多个Web服务方法共享同一个成功回调函数 490
页面范例-示范利用用户内容与方法名称判断调用者 490
11.8  如何传递与接收复杂类型 492
页面范例1-传递与接收复杂类型的自定义色彩对象 492
页面范例2-传递与接收复杂类型的自定义菜单对象 496
11.9  如何使用JavaScript调用远程Web服务 503
页面范例-实现RSS订阅器 503
11.10  如何使用JavaScript调用页面方法 510
页面范例-结合JavaScript与页面方法制作一个自动输入完成文本框 510
11.11  如何使用JavaScript序列器并解析Web服务所返回的DataSet、DataTable或
DataRow对象 524
页面范例-示范使用JavaScript序列器并解析Web服务所返回的DataSet、DataTable或
DataRow对象 526
第12章  探讨如何于客户端JavaScript调用ASP.NET应用程序服务
12.1  如何通过JavaScript使用窗体验证 536
12.1.1  探讨AuthenticationService类的方法 536
12.1.2  探讨AuthenticationService类的属性 538
12.1.3  使用JavaScript来调用验证服务 543
页面范例-示范如何在应用程序中调用窗体验证的Web服务 545
12.2  用户配置文件 551
12.2.1  探讨ProfileService类的属性字段 551
12.2.2  探讨ProfileService类的方法 551
12.2.3  探讨ProfileService类的属性 552
12.2.4  探讨ProfileGroup类 556
12.2.5  使用JavaScript来调用用户配置文件服务 557
页面范例1-调用用户配置文件服务来取得与设置页面前景色和背景色 558
页面范例2-示范如何通过客户端与服务器端程序代码存取用户配置文件 566
第13章  缝制新装为自己量身打造才有趣—探讨创建具备客户端功能的组件
13.1  如何创建自定义的客户端DOM元素事件 571
13.1.1  如何将事件处理函数绑定至DOM元素事件 571
页面范例-示范如何将事件处理函数绑定至DOM元素事件 572
13.1.2  如何创建与移除自定义的事件处理函数 573
13.1.3  如何引发自定义事件 574
13.2  如何创建非可视客户端组件 574
页面范例-示范如何创建与使用非可视客户端组件 575
13.3  如何创建客户端行为 581
13.4  如何创建客户端控件 582
页面范例1-查看客户端控件的执行效果 583
页面范例2-实现具备鼠标移入、移出与单击功能的客户端控件 587
13.5  如何创建扩展器 593
页面范例1-示范如何创建与使用扩展器 595
页面范例2-验证身份证号码的扩展器 599
13.6  如何将扩展器编译成组件 602
13.7  如何创建具备客户端功能的Web服务器控件 604
页面范例1-示范如何创建与使用具备客户端功能的Web服务器控件 606
页面范例2-示范如何创建与使用具备验证身份证号码客户端功能的Web服务器控件 609
附录  范例安装与使用说明 610
A.1  安装SQL Server 2005 Express Edition 610
A.2  安装范例数据库并复制范例网站 610
A.3  使用网页范例 610
A.4  注意事项 611
A.5  如何查看研讨会实况影片 611

教学资源推荐
作者: [美] 克里斯多夫 W. 弗雷泽(Christopher W. Fraser)戴维 R. 汉森(David R. Hanson) 著
作者: 顾治华 陈天煌 孙珊珊 编著
作者: [美]梁勇(Y. Daniel Liang) 著
作者: (美)Maurice Herlihy 布朗大学 Nir Shavit 麻省理工学院 著
参考读物推荐
作者: Jeffrey Allan Hardy
作者: 贾佳 郝洪明