随笔- 313  评论- 12176  文章- 1 

《ASP.NET AJAX程序设计 第I卷 服务器端ASP.NET AJAX Extensions与ASP.NET AJAX Control Toolkit》目录(最终定稿)

第一二卷都比较简单,特别是第一卷,讲的都是服务器端控件。第二卷是客户端部分,第三卷是高级内容,包括调试、性能、部署、控件开发、源代码结构、用户体验、心理学模型等等……

第一卷争取在四月份出版,谢谢各位支持!

第二卷(写作中)的章节计划请参考:《ASP.NET AJAX程序设计——第II卷 客户端Microsoft AJAX Library》章节计划

 

第1章 Ajax概述 1
1.1 Ajax之前的Web 1
1.2 水到渠成的Ajax 2
1.3 Ajax应用程序的特征 5
1.4 Ajax使用的技术 8
1.5 Ajax的实现原理 10
1.6 最简单的Ajax应用程序 11
1.7 Ajax的优势和不足 15
1.8 小结 16


第2章 ASP.NET AJAX介绍 17
2.1 ASP.NET AJAX的特性 18
2.1.1 服务器端特性 18
2.1.2 客户端特性 18
2.2 ASP.NET AJAX架构总揽 19
2.2.1 服务器端架构 19
2.2.2 客户端架构 20
2.3 安装ASP.NET AJAX 23
2.3.1 预先需求 23
2.3.2 几个不同的安装文件 24
2.3.3 安装ASP.NET AJAX 25
2.3.4 常见问题以及解决方案 27
2.4 配置ASP.NET AJAX 28
2.4.1 在现有的ASP.NET程序上应用ASP.NET AJAX 28
2.4.2 新建ASP.NET AJAX应用程序 33
2.4.3 将“Futures”部分中的服务器端控件添加到Visual Studio的Toolbox中 35
2.5 ASP.NET AJAX使用方法概述 36
2.5.1 服务器端和客户端使用方法的比较 37
2.5.2 选择最适合的使用方法 37
2.6 展望ASP.NET AJAX的发展 38
2.7 ASP.NET AJAX Hello World示例程序 39
2.7.1 示例程序介绍 39
2.7.2 设计页面的HTML部分 40
2.7.3 编写提供服务的Web Service 40
2.7.4 使用ScriptManager控件在页面上添加Web Service的客户端引用 42
2.7.5 用JavaScript让程序运转起来 44
2.7.6 使用HTTP嗅探器看看到底发生了什么 45
2.8 小结 46


第3章 ASP.NET AJAX的核心:ScriptManager控件 48
3.1 ASP.NET AJAX框架内建的客户端脚本文件 49
3.2 在页面中添加ScriptManager控件 50
3.2.1 EnablePartialRendering属性 52
3.2.2 EnablePageMethods属性 53
3.2.3 EnableScriptGlobalization和EnableScript- Localization属性 53
3.3 管理客户端脚本 54
3.3.1 引入程序集中内嵌的脚本资源 54
3.3.2 引入单独的脚本文件 55
3.3.3 引入多个客户端脚本 56
3.3.4 Debug和Release版本的客户端脚本 56
3.3.5 设置脚本的根路径 58
3.3.6 响应解析脚本事件 60
3.3.7 <script>标签在HTML中的位置 61
3.3.8 脚本文件的本地化支持 61
3.3.9 通知脚本资源加载完成 62
3.4 管理Web Service客户端代理 63
3.5 处理异步回送中发生的异常 66
3.6 以编程方式控制ScriptManager 71
3.7 页面上的另一个ScriptManager:ScriptManagerProxy 74
3.8 小结 75


第4章 使用UpdatePanel控件实现局部更新 76
4.1 UpdatePanel介绍 76
4.2 在页面中添加UpdatePanel 77
4.3 使用AsyncPostBackTrigger让外部控件引发局部更新 81
4.4 使用PostBackTrigger让内部控件引发整页回送 84
4.5 页面中的多个UpdatePanel及其更新模式 86
4.6 整页回送、异步回送以及UpdatePanel更新策略总结 91
4.7 使用UpdateProgress在更新过程中给用户以提示 92
4.8 让现有的页面支持局部异步更新 98
4.9 避免过度使用 100
4.10 常见问题 101
4.10.1 ScriptManager在源代码中的位置不正确 101
4.10.2 ScriptManager没有启用EnablePartialRendering 102
4.10.3 局部更新过程中无法向页面写入JavaScript 103
4.10.4 动态加载的用户控件中的UpdatePanel无法正常工作 105
4.10.5 包含某些第三方控件时无法正常工作 106
4.11 小结 106


第5章 使用扩展器控件为服务器端控件添加客户端功能 108
5.1 扩展器控件介绍 108
5.2 使用DragOverlayExtender实现层的自由拖动 109
5.3 使用AutoCompleteExtender实现自动完成功能 112
5.3.1 编写服务器端提供候选词列表的Web Service 113
5.3.2 将AutoCompleteExtender指向页面中的文本框 117
5.4 扩展器控件的统一使用方法 119
5.5 以编程方式设定扩展器控件 120
5.6 扩展器控件与Decorator模式 120
5.7 小结 121


第6章 其他ASP.NET AJAX服务器端控件介绍 123
6.1 使用Timer定时触发事件 123
6.1.1 Timer控件介绍 123
6.1.2 使用Timer定时更新UpdatePanel 124
6.1.3 慎用Timer频繁更新UpdatePanel 126
6.2 使用ProfileService将用户个性化服务暴露给客户端 126
6.2.1 启用ProfileService 127
6.2.2 让DragOverlayExtender记住拖动元素的位置 128
6.3 跨浏览器的WebPartManager和WebPartZone 131
6.3.1 ASP.NET 2.0内建Web部件的缺陷 131
6.3.2 让Web部件支持Firefox 134
6.3.3 告别改变配件位置后的页面刷新 135
6.4 使用Script控件为不同的浏览器发送不同的脚本 136
6.5 使用Gadget控件为Live.com等网站创建配件 137
6.6 InitialData控件介绍 142
6.6.1 加载时多次请求服务器的页面 143
6.6.2 将初始化所需的数据随页面一起发送至客户端 145
6.7 小结 146


第7章 ASP.NET AJAX ControlToolkit介绍 147
7.1 ASP.NET AJAX Control Toolkit介绍 147
7.2 安装配置ASP.NET AJAX Control Toolkit 150
7.2.1 预先需求 150
7.2.2 下载ASP.NET AJAX Control Toolkit 150
7.2.3 将控件添加到Visual Studio的Toolbox中 151
7.2.4 在ASP.NET AJAX Web站点中添加对必要程序集的引用 152
7.2.5 在web.config文件中为控件指定一个有意义的前缀 152
7.3 下载文件的组织结构 153
7.3.1 目录结构 153
7.3.2 Visual Studio项目结构 153
7.4 ASP.NET AJAX Control Toolkit的示例Web站点 155
7.5 ASP.NET AJAX Control Toolkit的测试Web站点 157
7.6 小结 159


第8章 ASP.NET AJAX Control Toolkit中的样式扩展器控件 160
8.1 AlwaysVisibleControl:悬浮在固定位置的面板 161
8.1.1 应用场景 161
8.1.2 声明语法以及常用属性 162
8.1.3 示例程序:固定悬浮在页面中的Login控件 163
8.1.4 常见问题以及使用技巧 165
8.2 CollapsiblePanel:可折叠的面板 166
8.2.1 应用场景 166
8.2.2 声明语法以及常用属性 167
8.2.3 示例程序:让悬浮的Login控件自动折叠 168
8.2.4 示例程序:演示完整功能 170
8.2.5 常见问题以及使用技巧 172
8.3 DropShadow:让面板投射出阴影 173
8.3.1 应用场景 173
8.3.2 声明语法以及常用属性 174
8.3.3 示例程序:让悬浮的Login控件投射出阴影 175
8.3.4 常见问题以及使用技巧 176
8.4 HoverMenu:显示附加信息的面板 177
8.4.1 应用场景 177
8.4.2 声明语法以及常用属性 179
8.4.3 示例程序:将列表的附加信息和操作选项放在弹出面板中 180
8.4.4 常见问题以及使用技巧 185
8.5 ModalPopup:网页中的模态对话框 185
8.5.1 应用场景 185
8.5.2 声明语法以及常用属性 186
8.5.3 示例程序:引导用户登录的模态对话框 187
8.5.4 常见问题以及使用技巧 188
8.6 RoundedCorners:为面板添加圆角效果 190
8.6.1 应用场景 190
8.6.2 声明语法以及常用属性 191
8.6.3 示例程序:圆角的Login控件 191
8.7 TextBoxWatermark:带有水印效果的TextBox 192
8.7.1 应用场景 193
8.7.2 声明语法以及常用属性 194
8.7.3 示例程序:带有水印效果的留言表单 194
8.7.4 常见问题以及使用技巧 196
8.8 ToggleButton:用图片来代替CheckBox 197
8.8.1 应用场景 197
8.8.2 声明语法以及常用属性 198
8.8.3 示例程序:用图片来代替CheckBox 198
8.8.4 常见问题以及使用技巧 199
8.9 Slider:网页上的滑动条 200
8.9.1 应用场景 200
8.9.2 声明语法以及常用属性 200
8.9.3 示例程序:简单的滑动条 201
8.10 DropDown:SharePoint样式的下拉菜单 202
8.10.1 应用场景 202
8.10.2 声明语法以及常用属性 203
8.10.3 示例程序:模仿SharePoint样式的下拉菜单 203
8.11 ValidatorCallout:更加醒目的Validator 205
8.11.1 应用场景 205
8.11.2 声明语法以及常用属性 206
8.11.3 示例程序:让验证失败信息显示在弹出面板中 207
8.12 小结 209


第9章 ASP.NET AJAX Control Toolkit中的功能扩展器控件 210
9.1 CascadingDropDown:实现联动下拉框 210
9.1.1 应用场景 210
9.1.2 声明语法以及常用属性 211
9.1.3 示例程序:国家、省份、城市联动下拉列表 213
9.1.4 常见问题以及使用技巧 219
9.2 ConfirmButton:带有确认功能的按钮 220
9.2.1 应用场景 220
9.2.2 声明语法以及常用属性 221
9.2.3 示例程序:确认删除功能 221
9.2.4 常见问题以及使用技巧 223
9.3 DragPanel:可在页面中拖动的窗口 224
9.3.1 应用场景 224
9.3.2 声明语法以及常用属性 225
9.3.3 示例程序:使用标题栏进行拖动的窗口 225
9.3.4 常见问题以及使用技巧 227
9.4 DynamicPopulate:“穷人的”UpdatePanel 228
9.4.1 应用场景 228
9.4.2 声明语法以及常用属性 230
9.4.3 示例程序:显示条目的详细信息 231
9.4.4 常见问题以及使用技巧 236
9.5 FilteredTextBox:防患于未然的用户输入验证 237
9.5.1 应用场景 237
9.5.2 声明语法以及常用属性 238
9.5.3 示例程序:只能输入四则运算表达式的TextBox 238
9.5.4 常见问题以及使用技巧 239
9.6 NumericUpDown:用上下箭头调整TextBox中的值 239
9.6.1 应用场景 240
9.6.2 声明语法以及常用属性 240
9.6.3 示例程序:NumericUpDown 的默认行为 242
9.6.4 示例程序:在指定值列表中枚举 243
9.6.5 示例程序:用Web Service设置单步步长以及上下限 243
9.7 PagingBulletedList:在客户端索引、分页和排序的BulletedList 245
9.7.1 应用场景 245
9.7.2 声明语法以及常用属性 246
9.7.3 示例程序:为BulletedList添加字母索引 247
9.7.4 示例程序:为BulletedList添加分页索引 250
9.8 PasswordStrength:即时检验密码的强度 250
9.8.1 应用场景 250
9.8.2 声明语法以及常用属性 251
9.8.3 示例程序:全功能的即时密码强度检测 253
9.8.4 常见问题以及使用技巧 257
9.9 PopupControl:帮助用户输入的面板 257
9.9.1 应用场景 257
9.9.2 声明语法以及常用属性 258
9.9.3 示例程序:为TextBox添加日期选择器 259
9.9.4 常见问题以及使用技巧 261
9.10 ResizableControl:拖放边框改变大小的面板 261
9.10.1 应用场景 261
9.10.2 声明语法以及常用属性 262
9.10.3 示例程序:页面中可改变大小的窗口 263
9.10.4 常见问题以及使用技巧 265
9.11 Animation:与Flash媲美的JavaScript动画 266
9.11.1 应用场景 266
9.11.2 声明语法以及常用属性 267
9.11.3 使用XML声明动画 268
9.11.4 示例程序:以动画效果显示附加信息 272
9.11.5 常见问题以及使用技巧 275
9.12 UpdatePanelAnimation:让UpdatePanel的更新不再单调 275
9.12.1 应用场景 275
9.12.2 声明语法以及常用属性 276
9.12.3 示例程序:给用户明显提示的UpdatePanel 276
9.12.4 常见问题以及使用技巧 280
9.13 MutuallyExlcusiveCheckBox:允许取消选择的单选按钮组 280
9.13.1 应用场景 280
9.13.2 声明语法以及常用属性 281
9.13.3 示例程序:允许取消选择的单选按钮组 282
9.14 小结 283


第10章 ASP.NET AJAX Control Toolkit中的独立控件 285
10.1 NoBot:拒绝机器人程序 285
10.1.1 应用场景 285
10.1.2 声明语法以及常用属性 287
10.1.3 示例程序:阻止机器人程序的提交 288
10.1.4 常见问题以及使用技巧 294
10.2 Accordion:可折叠面板的集合 294
10.2.1 应用场景 294
10.2.2 声明语法以及常用属性 295
10.2.3 示例程序:直接声明Accordion中的AccordionPane 298
10.2.4 示例程序:使用数据绑定实现基于Accordion的RSS阅读器 301
10.2.5 常见问题以及使用技巧 304
10.3 Rating:样式丰富的评级功能 305
10.3.1 应用场景 305
10.3.2 声明语法以及常用属性 306
10.3.3 示例程序:支持评级的音乐列表 307
10.3.4 常见问题以及使用技巧 312
10.4 ReorderList:用鼠标拖动改变条目顺序 312
10.4.1 应用场景 312
10.4.2 声明语法以及常用属性 314
10.4.3 示例程序:可排序的音乐列表 316
10.5 小结 321


第11章 实例程序:为Jobs Site Starter Kit添加Ajax功能 322
11.1 安装并创建Jobs Site Starter Kit站点 323
11.1.1 预先需求 323
11.1.2 下载并安装Jobs Site Starter Kit站点模板 323
11.1.3 创建Jobs Site Starter Kit站点 324
11.2 Jobs Site Starter Kit介绍 325
11.2.1 站点功能介绍 325
11.2.2 站点使用的ASP.NET特性 326
11.2.3 站点项目的组织结构 326
11.2.4 站点架构 328
11.2.5 用户以及角色 328
11.2.6 使用站点导航 329
11.3 为Jobs Site Starter Kit站点启用ASP.NET AJAX 331
11.3.1 在Web站点中添加ASP.NETAJAX程序集 332
11.3.2 修改Web.config配置文件 332
11.4 添加ScriptManager控件 333
11.5 使用UpdatePanel实现局部更新 334
11.5.1 站点导航树 334
11.5.2 求职者修改简历 335
11.5.3 求职者搜索职位信息 336
11.5.4 管理员修改系统所支持的求职者教育程度等级 337
11.6 使用UpdateProgress显示更新状态 338
11.7 让Web部件跨浏览器支持拖放 339
11.8 使用AlwaysVisibleControl让统计信息总是可见 341
11.9 使用ConfirmButton在必要时弹出确认对话框 343
11.9.1 求职者取消对简历的修改 343
11.9.2 职位发布者删除某个职位 344
11.10 使用CascadingDropDown实现联动下拉列表 347
11.10.1 编写提供下拉列表数据的Web Service 347
11.10.2 在ASPX页面中添加CascadingDropDown 349
11.10.3 修改CS文件配合使用CascadingDropDown 350
11.10.4 完成后的功能演示 353
11.11 使用TextBoxWatermark为搜索框添加水印效果 354
11.12 小结 358

第二卷(写作中)的章节计划请参考:《ASP.NET AJAX程序设计——第II卷 客户端Microsoft AJAX Library》章节计划

posted on 2007-03-29 10:22  Dflying Chen  阅读(...)  评论(...编辑  收藏