分享
 
 
 

庖丁解牛:纵向切入ASP.NET 3.5控件和组件开发技术(微软MVP作品系列)(附赠DVD光盘1张,附赠CD光盘1张)

庖丁解牛:纵向切入ASP.NET 3.5控件和组件开发技术(微软MVP作品系列)(附赠DVD光盘1张,附赠CD光盘1张)  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,计算机与互联网,图形图像、动画、多媒体与网页开发,综合,
  品牌: 郑健

基本信息·出版社:电子工业出版社

·页码:646 页

·出版日期:2009年

·ISBN:7121079798/9787121079795

·条形码:9787121079795

·包装版本:1版

·装帧:平装

·开本:16

·正文语种:中文

·丛书名:微软MVP作品系列

·附带品描述:附赠DVD光盘1张,附赠CD光盘1张

产品信息有问题吗?请帮我们更新产品信息。

内容简介《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》主要介绍ASP.NET的控件开发,书中通过70多个例子讲解了ASP.NET控件开发技术的各个方面,而且剖析了很多控件中系统基类源代码,读者从这些系统源代码可以体会设计模式思想。如果扎实地掌握了ASP.NET控件的运行机制,开发一个页面级的ASP.NET应用程序会变得非常简单。《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》宗旨就是让开发人员真正理解ASP.NET技术,帮助开发人员提高ASP.NET开发的技术水平。学完《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》后您不仅能够掌握控件开发各个方面的技术,而且深晓ASP.NET的工作原理。对大部分使用ASP.NET技术开发两年左右的开发人员来说,《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》75%以上的内容可能没有接触过,《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》将通过笔者精心准备的一些生动的例子来阐述这些内容。

《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》适合从事ASP.NET技术多年想往深度理解ASP.NET工作机制的开发人员阅读,对于刚刚入门的初级开发人员,《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》的前面几章也介绍了几个入门性的应用例子,《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》还可以作为在校学生的就业预备教材。针对读者安装的开发环境不同,笔者分别为VS 2005和VS 2008建立了解决方案,即无论您是使用VS 2005还是VS 2008都可以成功打开《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》随书光盘的代码,只是使用VS 2005打开的解决方案不包含.NET 3.5对应章节内容的示例代码。

作者简介姓名:郑健

网名:【夜战鹰】

【ChengKing(zhengJian)】

MSDN中文技术论坛版主;CSDNBlog专家、社区专家、荣誉专家;CSDN社区ASP.NET版块版主、ASP.NET控件/组件开发版块版主;2006~2009年多届微软全球最有价值专家;荣获“DevWOW微软博客达人”优胜奖;荣获微软“最有影响力开发者”奖项。具有多年Web开发经验,目前在北京用友软件集团平台技术部门从事ERP产品的底层UI控件/组件设计工作。

作为一个对技术的痴狂追求者,我很明白分享的重要意义,因为有过许多次当遇到问题从网上寻找到答案的惊喜,所以希望本书也能为钟情于ASP.NET的读者们带来同样的感受。

媒体推荐不是诚心想成为杰出ASP.NET程序专家者,请勿浪费时间翻阅本书。

——胡德民

相信您阅读过此书后,会像庖丁一样,有一种提书而立,为之四顾,为之踌躇满志的感觉。

——王洪超

编辑推荐《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》能帮您真正地理解ASP.NET技术,不仅能够掌握控件开发的各个方面的技术,而且也能透彻

理解ASP.NET的工作原理;

控件开发工作的天然好处就是让您拥有更多实战面向对象的机会,从而能更真切地感受到

面向对象;

对控件系统基类源代码的纵向切入能帮您更深入地理解设计模式思想;

它能帮您摒弃许多作为开发人员所固有的陋习——只知其然,不知其所以然,摆脱“傻瓜式”编程的境地,直接深入到底层;

它还是您开发过程当中的良师益友,内容全面,对每每个控件开发技术点均有详尽的阐述,

最适合作为您工作当中的查询手册。

《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》的承诺:

从未接触过ASP.NET技术的读者,能使您直接晋升到ASP.NET控件开发的层次;

从未接触过ASPNET控件开发的读者,能使您自如地开发自己想要的控件;

从未接触过ASP.NET控件开发但熟悉ASP.NET技术的读者,能使您的功力直接提升三倍!

目录

第1章 服务器控件概述及开发环境部署 1

1.1 自定义服务器控件 1

1.2 服务器控件在软件开发过程中的作用 1

1.3 在控件开发中提升自己 2

1.4 可继承控件基类介绍 2

1.5 运行一个简单的控件 7

1.5.1 开发一个简单控件 7

1.5.2 部署和运行 11

1.6 控件生命周期 12

1.6.1 概述 12

1.6.2 用代码跟踪控件生命周期过程 14

1.7 本章总结 17

第2章 服务器控件开发中的调试技术 18

2.1 预置代码示例 18

2.2 调试页面服务端代码 19

2.3 服务器控件的调试 20

2.3.1 运行模式下的调试方法 20

2.3.2 设计模式下的调试方法 20

2.4 JavaScript脚本调试方法 22

2.4.1 调试页面中的JavaScript脚本(方法一) 22

2.4.2 调试页面中的JavaScript脚本(方法二) 23

2.4.3 调试非嵌入式JavaScript脚本文件 23

2.4.4 调试嵌入式JavaScript脚本资源文件 24

2.4.5 高效率调试的技巧 24

2.5 Ajax Library对JavaScript调试支持 26

2.6 本章总结 26

第3章 从零开始开发服务器控件 27

3.1 选择基类 27

3.2 控件呈现顺序 28

3.3 Render呈现控件的几种方式 30

3.3.1 使用HTML Text Writer类输出 30

3.3.2 直接输出HTML标签 32

3.3.3 使用服务器控件的Render Control方法 33

3.4 Add Attributes To Render方法 34

3.5 Create Child Controls方法 35

3.6 INaming Container接口 36

3.7 实现复合控件 38

3.7.1 Create Child Controls方法 39

3.7.2 Child Controls Created属性 39

3.7.3 Ensure Child Controls方法 39

3.7.4 Recreate Child Controls方法 39

3.7.5 Controls属性 40

3.7.6 HasControls方法 40

3.7.7 HasEvents方法 40

3.7.8 FindControl方法 41

3.7.9 实现复合控件示例 41

3.8 常用开发技巧 51

3.8.1 Design Mode属性 51

3.8.2 屏蔽基类控件中的属性 52

3.8.3 Page Request Browser属性 53

3.8.4 设置控件ID规范 53

3.8.5 增强Find Control功能 54

3.8.6 映射服务端控件值到客户端 55

3.8.7 禁止派生自Composite Control的控件创建子控件 56

3.8.8 使用Create Child Controls的注意事项 56

3.8.9 不要误解设计元属性Default Value 57

3.8.10 在Render方法中利用基类资源 57

3.8.11 条件编译&条件属性 60

3.9 本章总结 61

第4章 服务器控件属性 62

4.1 控件属性的作用 62

4.1.1 系统属性 62

4.1.2 自定义属性 62

4.2 简单属性 63

4.3 属性的设计时特性 64

4.4 复杂属性 67

4.4.1 概述 67

4.4.2 复杂属性的几种标记形式 67

4.4.3 深入研究——复杂属性分析器 79

4.5 深入研究——定制自己的属性编辑器 85

4.5.1 系统属性编辑器 85

4.5.2 定制属性编辑器 91

4.6 类型转换器 126

4.6.1 系统类型转换器 126

4.6.2 定制自己的类型转换器 128

4.7 实现自定义属性 138

4.8 本章总结 145

第5章 事件和数据回发机制 146

5.1 控件事件和数据回发概述 146

5.1.1 事件及其意义 146

5.1.2 数据回发机制 147

5.2 事件和数据回发机制的实现 148

5.2.1 客户端回传事件接口IPost Back Event Handler 148

5.2.2 客户端回发/回调揭密 150

5.2.3 回传数据处理接口IPostBackDataHandler 153

5.2.4 正确处理继承基类中控件的事件 159

5.2.5 扩展King Text Box控件功能(King Text Box Can Post Event控件) 161

5.3 复合控件的事件处理机制 168

5.3.1 高效率事件集合对象 168

5.3.2 定制自己的委托和事件参数类 170

5.3.3 复合控件的事件处理 175

5.3.4 自动完成功能控件Search Control Intelligent 185

5.4 本章总结 193

第6章 页面状态机制 194

6.1 页面状态概述 194

6.2 视图状态机制 195

6.2.1 IState Manager接口 195

6.2.2 控件生命周期中的装载和保存视图阶段 196

6.2.3 简单类型视图状态应用 197

6.2.4 实现自定义类型视图状态 205

6.3 控件状态机制 217

6.4 视图状态和控件状态的关系 221

6.4.1 在禁用视图状态的情况下仍然使用ViewState对象 221

6.4.2 IState Manager接口仍然可以在控件状态中使用 223

6.4.3 视图状态和控件状态组合使用规则 225

6.5 加密页面状态 225

6.6 清除页面状态 226

6.7 对动态添加控件的视图状态分析 228

6.8 自定义类型转换器实现高效率序列化 231

6.9 页面状态性能优化策略 238

6.9.1 存储位置优化——把视图状态信息保存在服务端而非客户端 238

6.9.2 体积优化——压缩视图状态数据 240

6.9.3 分块存储视图状态数据 243

6.10 视图状态和控件状态的总结 243

6.11 本章总结 244

第7章 定制自定义控件主题样式 245

7.1 控件样式概述 245

7.2 ASP.NET对样式的支持 245

7.2.1 Style类的工作原理及使用 245

7.2.2 Web Control基类对样式的支持功能及其工作原理 249

7.2.3 HTML Text Writer类对控件样式的支持 252

7.2.4 定义控件内部的样式属性规则 253

7.2.5 两个常用转换方法 256

7.3 应用示例 260

7.3.1 复合控件样式及视图状态 260

7.3.2 控件结构与样式分离方案 268

7.4 本章总结 295

第8章 控件客户端编程模型 297

8.1 ASP.NET服务端控件对客户端的支持 297

8.2 Client Script Manager类功能详解 301

8.2.1 Register Array Declaration方法 301

8.2.2 Register Client Script Block方法 302

8.2.3 Register Client Script Include方法 303

8.2.4 Register Client Script Resource方法 304

8.2.5 Register Startup Script方法 305

8.2.6 Register Expando Attribute方法 305

8.2.7 Register Hidden Field方法 306

8.2.8 Get Callback Event Reference方法 307

8.2.9 GetPost Back Client Hyperlink方法 307

8.2.1 0GetPostBackEventReference方法 308

8.2.1 1GetWebResourceUrl方法 308

8.2.1 2RegisterOnSubmitStatement方法 309

8.3 客户端回调 309

8.4 客户端控件应用示例 323

8.4.1 封装JS客户端对象 323

8.4.2 封装HTC客户端对象 343

8.4.3 在线签名控件示例应用 371

8.5 常用的一些JavaScript框架 385

8.6 本章总结 387

第9章 定制用户控件 388

9.1 用户控件概述 388

9.1.1 用户控件的作用 388

9.1.2 了解System.Web.UI.UserControl基类 388

9.2 用户控件应用示例 389

9.2.1 简单用户控件 389

9.2.2 复杂数据绑定用户控件 394

9.3 用户控件缓存 419

9.3.1 ASP.NET缓存介绍 419

9.3.2 用户控件缓存 420

9.4 本章总结 421

第10章开发验证控件 422

10.1 验证控件的工作原理 422

10.1.1 内置验证控件简述 422

10.1.2 验证控件的工作机制解析 423

10.2 实现自定义验证控件 443

10.3 本章总结 451

第11章 在控件中使用嵌入资源 452

11.1 在控件中嵌入资源的原理 452

11.2 在控件中应用嵌入资源 453

11.2.1 在控件中使用嵌入资源 453

11.2.2 常用嵌入资源类型及用法 455

11.3 浏览器常用工具 460

11.3.1 HttpWatch 460

11.3.2 IEDevelperToolbar 461

11.3.3 Fiddler 461

11.4 本章总结 462

第12章 开发模板数据绑定控件 463

12.1 ASP.NET模板属性控件机制 463

12.1.1 模板属性介绍 463

12.1.2 ASP.NET对模板控件的支持 464

12.1.3 Repeater控件模板实现机制解析 466

12.2 自定义控件应用示例 469

12.2.1 模板控件功能 469

12.2.2 应用示例 470

12.3 本章总结 489

第13章 数据绑定和数据源控件 490

13.1 数据绑定控件 490

13.1.1 数据绑定控件概述 490

13.1.2 ASP.NET对数据绑定控件的支持 491

13.2 数据绑定控件示例应用 501

13.2.1 控件实现功能 501

13.2.2 应用示例 502

13.3 数据源控件 508

13.3.1 数据源控件概述 508

13.3.2 ASP.NET对数据源控件的支持 508

13.4 数据源控件示例应用 515

13.4.1 控件实现功能 515

13.4.2 应用示例 516

13.5 本章总结 522

第14章 扩展控件方案——GridView 523

14.1 扩展控件概述 523

14.2 任意定制GridView多表头 523

14.2.1 功能概述 523

14.2.2 代码实现 524

14.3 固定GridView表头并增加滚动条支持 527

14.3.1 功能概述 527

14.3.2 代码实现 528

14.4 本章总结 533

第15章 自定义控件设计模式下编程汇总 534

15.1.NET框架对设计时支持 534

15.2 设计时元数据支持 535

15.3 复杂属性序列化 539

15.4 类型转换器 539

15.5 属性编辑器 540

15.6 设计模式可用基类介绍 541

15.7 设计时对控件呈现的支持 543

15.7.1 概述 543

15.7.2 应用示例 543

15.8 自动套用格式 546

15.8.1 概述 546

15.8.2 应用示例 547

15.9 模板UI设计器 551

15.1 0智能操作列表 552

15.1 0.1 概述 552

15.1 0.2 应用示例 552

15.1 1控件设计器区域 558

15.1 1.1 概述 558

15.1 1.2 应用示例 558

15.1 2本章总结 562

第16章 ASP.NETAjax控件开发——客户端 563

16.1 ASP.NETAjax框架概述 563

16.2 AjaxLibrary对客户端面向对象功能支持 564

16.2.1 命名空间及Type和Function类 565

16.2.2 接口类型 568

16.2.3 类类型以及面向对象继承特征 569

16.2.4 枚举类型 570

16.2.5 反射功能 570

16.3 AjaxLibrary中的常用类型 571

16.3.1 AjaxLibrary对JavaScript基类型的扩展 571

16.3.2 Sys.StringBuilder类 576

16.4 AjaxLibrary请求服务端和WebServices 577

16.4.1 Sys.NET命名空间中的类 577

16.4.2 请求过程解析 578

16.4.3 WebRequest请求示例 579

16.4.4 使用代理实现Ajax调用服务端示例 581

16.5 AjaxLibrary对控件客户端类开发的支持 584

16.5.1 客户端控件基成员(类/接口) 584

16.5.2 ASP.NETAjax控件客户端生命周期 589

16.6 客户端控件示例应用 592

16.7 调试和跟踪 603

16.8 本章总结 605

第17章 ASP.NETAjax控件开发——服务端 606

17.1 ASP.NETAjax服务器控件概述 606

17.2 Ajax服务器控件 607

17.2.1 Ajax服务器控件 607

17.2.2 ASP.NETAjax扩展程序控件 612

17.3 ASP.NETAjax对服务器控件支持的基类 612

17.3.1 Ajax控件支持的基类 612

17.3.2 Ajax控件应用示例 623

17.4 本章总结 636

附录A .NET3.5 技术教程系列——Collection/ASP.NETAjax/SilverLight/JQuery 646

……[看更多目录]

序言中学的时候,在语文课堂上学习过庖丁解牛的寓言故事。生活在战国时期的著名思想家庄子,以其神来之笔向我们介绍了一位古代的“牛人”庖丁,通过长期的实践,在掌握了“牛”的生理结构后,“解牛”时可以得心应手,运用自如,尤其是最后的描述“提刀而立,为之四顾,为之踌躇满志,善刀而藏之”让吾辈神往不已,一代“解牛”大侠,颇有独孤求败的气势!

后来我又学过一篇寓言故事,即宋朝欧阳修所著的《卖油翁》,同样描述了一位经过反复实践,在酌油时,油可以“自钱孔入,而钱不湿”的卖油翁,这其实也是一位神人。而且卖油翁非常谦虚,在总结自己的成功经验时,只说了一句“无他,但手熟尔”。

在很长的一段时间内,我一直认为这两篇故事讲述的是同一个道理,所有的技能通过反复的磨炼,最后在实践时均可以做到得心应手,运用自如,均为“无它,但手熟尔”。

三十六行,行行出状元。我也一直将各种程序界的“牛”人比喻为庖丁或者卖油翁,认为他们可以非常熟练地掌握各种相关知识,在编写程序时信手拈来,拖拖拽拽之间,最终的应用程序成型出炉,最后提“鼠标”而立,为之四顾,为之踌躇满志。当有后辈请教时,非常谦虚地面带微笑曰:我亦无它,惟手熟尔。让周围手不熟的同事也为之神往不已。

但后来我发现,其实这些神人之间还是有很大差异的,这种差异其实正好体现了卖油翁与庖丁的不同境界。

回顾一下,在ASP.NET之后, Web编程开始变得异常简单,因为它将更多的实现细节隐藏在框架内部。大部分需求场景甚至仅需要拖曳控件就可以了,不需要编写任何代码。更有甚者,从ASP.NET 2.0开始,包括用户管理(注册、找回密码、更改密码等)、导航(站点地图、菜单等)在内的场景都不需要再编写代码,只需要将相应的控件拖到表单上即可以完成编码。

这在一定程度上使得生产力得以大大提升,开发人员不必了解具体的开发细节,只需要将这些积木式的“控件”所完成的功能了解清楚即可。在工作中,随心所欲地玩转这些控件,似乎已经成为了ASP.NET编程高手的象征。而在遇到问题时,大部分ASP.NET开发人员的第一个想法就是去互联网上寻找现成的控件。

这样,很多开发人员可以在经过短时间的磨炼后,就可以面带微笑得向其新来同事笑曰:我亦无它,惟手熟尔。但相信在这些“谦虚”的“卖油翁”当中,有很多只是“知其然,而不知其所以然”。

文摘插图:

庖丁解牛:纵向切入ASP.NET 3.5控件和组件开发技术(微软MVP作品系列)(附赠DVD光盘1张,附赠CD光盘1张)

第1章 服务器控件概述及开发环境部署

本章内容

1.1 自定义服务器控件

1.2 服务器控件在软件开发过程中的作用

1.3 在控件开发中提升自己

1.4 可继承控件基类介绍

1.5 运行一个简单的控件

1.6 控件生命周期

1.1 自定义服务器控件

什么是服务器控件?一个Button就是一个服务器控件。ASENET提供了很多服务器控件,比如:TextBox,GridView,Login等。

服务器控件是能够完成一定的通用交互功能,编译成程序集,并嵌入到页面(扩展名为.aspx的文件)中的控件。当客户端向服务器请求一个页面时,页面构造器能够使控件与页面一起以被浏览器识别的HTML标记串返回;在客户端跟用户交互后,可以将属性又提交回服务器,以及触发事件等。服务端控件分为HTML服务器控件和Web服务器控件。总之,服务器控件集成了一定的交互功能,具有较强的代码重用性。

自定义服务器控件除了具备上面所说的服务器控件的所有特性外,还可以满足某个自己定制的功能。

1.2 服务器控件在软件开发过程中的作用

服务器控件开发在软件开发应用中是非常必要的。使用自定义服务器控件的情况有以下

几种:

1.需要使用集成了业务功能的控件

一般微软或第三方控件公司提供的控件只具备技术方面的功能通用性,在做一个具体的系统时,会用到很多封装多种业务的控件。如ERP系统中的参照控件,就是一个典型的将业务和技术封装在一块的控件。这样不仅可以做到“代码重用”,也可以做到“业务重用”。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有