第1章 开篇 1
1.1 各主题的80/20法则 2
1.2 VB.NET中的变化及本书内容安排 2
1.3 VB.NET测试版所需安装的软件 4
1.3.1 软件的获得 5
1.3.2 环境要求 6
1.3.3 准备安装 8
1.3.4 安装Visual Studio.NET 10
1.3.5 配置远程IIS服务器 21
1.4 确保软件正常运行——Hello World程序 22
1.5 小结 27
第2章 .NET Framework入门 28
2.1 一个适应未来的应用范围广、功能强大的开发平台 28
2.3 避免混淆——.NET Enterprise Servers的作用 29
2.2 一个重要的警告 29
2.4 我们现在拥有的工具所存在的问题 30
2.4.1 显示层 30
2.4.2 中间层 31
2.4.3 数据层 32
2.4.4 有关DNA模型的讨论 32
2.5 .NET的起源 33
2.6 .NET Framework简介 34
2.7 公用语方运行时 35
2.7.1 主要的设计意图 35
2.7.2 元数据 38
2.7.3 多语言集成和支持 39
2.7.4 公共类系统 40
2.7.5 名称空间 42
2.7.7 安装和执行 43
2.7.6 .NET Framework中应用程序的结构 43
2.8 下一层——.NET Class Framework 47
2.9 用户和程序界面 49
2.9.1 用户界面 49
2.9.2 编程界面 51
2.10 作为.NET“元语言”的XML 52
2.11 COM的作用 53
2.12 DNA的作用 53
2.13 其他优点 53
2.13.1 更少出错——整个错误类有可望消失 54
2.13.2 更好的性能 54
2.13.3 一些潜在的缺点 54
2.14 第一步——Visual Studio.NET 55
2.14.1 所有语言的公共IDE 55
2.14.2 公用语言规范 55
2.15 对Visual Basic的影响 56
2.14.3 多语言工程的管理 56
2.14.4 Visual Interdev的出现 56
2.16 .NET对我们的影响 57
2.16.1 一系列编程模块 57
2.16.2 减少Internet开发的障碍 57
2.16.3 预先编写的功能库 58
2.16.4 更简单的布署 58
2.17 警告 58
2.18 小结 58
第3章 IDE和VB.NET的语言特性 59
3.1 Hello World应用程序 59
3.1.1 声明 60
3.1.2 声明、初始化和终止 61
3.1.3 Windows Form Designer生成的代码 65
3.1.4 事件处理代码 68
3.2.1 主页 70
3.2 新的IDE特性 70
3.2.2 窗口的定位 71
3.2.3 主窗口 72
3.2.4 对宏的支持 83
3.2.5 集成化的调试 83
3.3 语言和语法方面的改变和特性 85
3.3.1 名称空间 85
3.3.2 语言和语法上的改变 90
3.3.3 委托 118
3.3.4 属性 119
3.4 小结 120
第4章 VB.NET新的Windows UI功能 121
4.1 Windows Forms 121
4.2 Windows Forms的重要性 121
4.3 Windows Forms基础 122
4.4 Windows Forms的结构 123
4.4.1 Control类 124
4.4.2 RichControl类 125
4.4.3 ScrollableControl类 126
4.4.4 ContainerControl类 126
4.4.5 Form类 127
4.4.6 UserControl类 129
4.4.7 与Web Forms保持一致 129
4.5 Windows Forms与VB6窗体的比较 129
4.5.1 使用Windows Forms的可视化设计器的区别 129
4.5.2 对话框的区别 130
4.5.3 从属窗体 134
4.5.4 Cancel按钮和Default按钮的窗体属性 135
4.5.5 窗体和控件在定位和布局上的区别 136
4.5.6 控件的新属性 137
4.5.7 运行期间添加新控件 139
4.6.2 与VB6的控件对应的VB.NET控件 140
4.6 重要控件小结 140
4.6.1 控件的层次结构 140
4.6.3 新控件 141
4.6.4 现有控件的改进 149
4.7 多文档界面(MDI)窗体的区别 150
4.7.1 创建MDI父窗体 150
4.7.2 MDI父窗体的区别 150
4.7.3 MDI子窗体的区别 151
4.7.4 在MDI父窗体中排列子窗口 151
4.7.5 VB.NET中的一个MDI例子 151
4.8 使用定制的属性和方法 152
4.9 Windows Forms的可视化继承 153
4.10 GDI+ 157
4.10.1 System.Drawing名称空间 158
4.10.2 在Windows Form中使用GDI+功能 158
4.10.4 System.Drawing.Imaging名称空间 161
4.10.3 System.Drawing.Drawing 2D名称空间 161
4.10.5 System.Drawing.Text名称空间 162
4.10.6 对VB6及其早期版本的修改 162
4.11 创建定制的Windows Forms控件 163
4.12 深层的内容 165
4.13 小结 166
第5章 VB.NET的新面向对象功能 167
5.1 面向对象和面向组件合并的概念 168
5.2 VB.NET OO的实现 168
5.2.1 创建类 169
5.2.2 对象的生存周期 174
5.2.3 继承性 179
5.2.4 共享或类成员 193
5.2.5 事件 195
5.3 接口 199
5.4.1 对象的声明和实例化 202
5.4 与对象交互 202
5.4.2 终止对象 204
5.4.3 前期和后期的绑定 204
5.5 跨语言的继承性 206
5.5.1 创建VB.NET基类 207
5.5.2 创建C#子类 207
5.5.3 创建客户应用程序 208
5.6 可视化的继承 209
5.7 小结 209
第6章 VB.NET的新Web功能 211
6.1 .NET的接口层 211
6.2 Web开发的预备知识 211
6.2.1 HTML 212
6.2.2 DHTML 213
6.2.3 浏览器特性的总结 213
6.2.5 Active Server Pages 214
6.2.4 XML 214
6.3 Active Server Pages的问题 215
6.4 Web Forms概述 216
6.4.1 活动的Web Forms 216
6.4.2 ASP.NET作为运行时引擎 219
6.4.3 Web Form的剖析 220
6.4.4 Web Forms事件模块 225
6.5 服务器控件 228
6.5.1 需要服务器控件的原因 228
6.5.2 HTML服务器控件 229
6.5.3 ASP.NET服务器控件 230
6.5.4 验证控件 232
6.5.5 定制Web Form控件 234
6.7.2 第二步——把控件放在Web Form上 237
6.7.1 第一步——初始化工程 237
6.7 最后一个例子——使用Web Forms的小应用程序 237
6.6 Web Forms中的数据绑定 237
6.7.3 第三步——放置一个标签来显示窗体的结果 238
6.7.4 第四步——在窗体上放置验证控件 238
6.7.5 第五步——在按钮的Click事件中插入代码 239
6.8 把现有的VB应用程序转换为Web Forms 241
6.8.1 典型的设计方案 242
6.8.2 降低对事件的依赖 242
6.8.3 把代码移到中间层 242
6.9 Web Services概述 242
6.9.1 Web Services的用途 243
6.9.2 理解SOAP协议 243
6.9.3 在VB.NET中创建Web Service 244
6.9.4 在Visual Basic.NET中使用Web Service 246
6.9.5 例子——创建和使用Web Service 247
6.10 小结 248
第7章 VB.NET中的数据访问 250
7.1 从ADO到ADO.NET的改进 251
7.1.1 与ADO的比较 251
7.1.2 ADO和ADO.NET的类似之处 251
7.2 ADO.NET——重要的概念 252
7.2.1 ADO.NET类的位置 252
7.2.2 替换Recordsets 252
7.2.3 对DataSet的说明? 252
7.2.4 在VB6中使用Recordset处理相关数据 253
7.2.5 DataSet如何提供更高的灵活性 254
7.2.6 ADO.NET中的数据流概述 254
7.3 管理支持程序 256
7.3.1 当前可用的支持程序 256
7.3.2 由管理支持程序执行的类 257
7.4 DataSet的结构 261
7.4.1 DataTable 262
7.4.3 DataRow 263
7.4.2 DataColumn 263
7.4.4 约束 265
7.4.5 DataRelation 265
7.5 DataSet的处理 266
7.5.1 手工创建DataSet 267
7.5.2 由数据库创建DataSet 268
7.6 使用DataView 276
7.6.1 在DataView中得到数据的一个子集 277
7.6.2 给DataView排序 277
7.7 Typed DataSet 278
7.8 ADO.NET的Exception类 280
7.9 通过ADO.NET访问XML 281
7.10 通过DOM访问XML 283
7.11 小结 283
8.1 中间层组件 284
第8章 高级论题 284
8.1.1 类库和DLL 285
8.1.2 Web Services 296
8.1.3 事务组件 296
8.1.4 使用Microsoft Message Queue(MSMQ) 300
8.2 .NET线程 304
8.3 控制台应用程序 315
8.4 新打印模式 317
8.4.1 PrintDocument和相关的对象 317
8.4.2 打印的实现 318
8.5 .NET中的安装 324
8.6 使用VB创建一个Windows NT/Win2K Service 326
8.6.1 创建Windows服务程序 326
8.6.2 安装服务程序 329
8.7 监视文件系统 332
8.8 命令行选项 333
8.8.1 vbc命令行参数 334
8.8.2 \bin目录中的工具概述 335
8.9 小结 338
第9章 交互操作和迁移 339
9.1 COM/DCOM/COM+的交互操作性 339
9.1.1 在.NET中调用COM组件 340
9.1.2 在COM上调用.NET装配件 351
9.2 调用Windows API 355
9.3 使用迁移工具 360
9.4 小结 365
第10章 更多的VB.NET开发例子 366
10.1 展开基于Web的付款计算器 366
10.2 用继承来的类生成SQL 371
10.3 小结 381
11.1.1 目前Visual Basic工程的语法约定 382
11.1 建议 382
第11章 总结 382
11.1.2 从条件中终止过程动作 383
11.1.3 终止隐含对象的实例化 383
11.1.4 迁移到Visual Basic.NET中的后备选项 384
11.2 Visual Basic迁移工具的局限性 384
11.2.1 处理DHTML页面和WebClasses 385
11.2.2 处理数据 385
11.2.3 转换后期绑定对象的问题 385
11.2.4 使用内部命名的常数来代替值 385
11.2.5 结构中固定长度的字符串的问题 386
11.3 从理解概念开始 386
11.3.1 开始使用VB6的SOAP工具箱 387
11.3.2 理解继承性和相关对象的概念 387
11.4 资源 387
11.5 致谢 388