第1章 初识Visual Basic 2005 1
1.1 Windows和DOS编程 1
1.2 安装Visual Basic 2005 3
1.3 Visual Basic 2005集成开发环境 5
1.3.1 简档文件设置页 6
1.3.2 菜单 6
1.3.3 工具栏 7
1.4 创建简单的应用程序 8
1.4.1 Visual Studio 2005集成开发环境中的窗口 9
1.4.2 工具箱 12
1.4.3 改进型匈牙利表示法 14
1.4.4 代码编辑器 15
1.5 使用帮助系统 19
1.6 小结 20
1.7 练习 20
第2章 Microsoft .NET Framework 21
2.1 Microsoft的信心来自于Windows 21
2.1.1 MSN 1.0 22
2.1.2 .NET理念 22
2.1.3 .NET与Java有些类似 23
2.1.4 现在所处的阶段 24
2.2 为Windows编写软件 24
2.2.1 .NET Framework类 25
2.2.2 执行代码 26
2.3.1 载入并执行代码 27
2.3 公共语言运行库 27
2.3.2 应用程序隔离 28
2.3.3 安全性 28
2.3.4 互操作 28
2.3.5 异常处理 29
2.4 通用类型系统和公共语言规范 29
2.5 小结 30
第3章 编写软件 31
3.1 信息和数据 31
3.1.1 算法 31
3.1.2 编程语言 32
3.2 变量 33
3.3.1 注释 35
3.3 注释和空白 35
3.3.2 空白 37
3.4 数据类型 37
3.4.1 数字类型 37
3.4.2 字符串类型 43
3.4.3 使用日期 51
3.4.4 布尔类型 57
3.5 存储变量 58
3.5.1 二进制 58
3.5.2 位和字节 59
3.5.3 值的表示 59
3.5.4 值的转换 60
3.6 方法 62
3.6.1 使用方法的原因 62
3.6.2 创建方法 66
3.6.3 选择方法名称 69
3.6.4 作用域 69
3.7 小结 71
3.8 练习 72
第4章 流程控制 73
4.1 作出决策 73
4.2 If语句 73
4.2.1 Else语句 75
4.2.2 可进行多重选择的 76
ElseIf语句 76
4.2.3 嵌套的If语句 77
4.2.4 单行If语句 77
4.2.5 比较运算符 78
4.2.6 字符串比较 86
4.3 Select Case语句 88
4.3.1 使用Select Case语句 88
4.3.2 不区分大小写的Select Case语句 91
4.3.3 多重选择 94
4.3.4 Case Else语句 95
4.3.5 Select Case中的不同数据类型 96
4.4 循环 96
4.4.1 For...Next循环 97
4.4.2 For Each...Next循环 101
4.4.3 Do...Loop循环 102
4.4.4 嵌套循环 106
4.4.5 提前退出循环 107
4.4.6 死循环 110
4.5 小结 111
4.6 练习 111
第5章 处理数据结构 113
5.1 数组 113
5.1.1 定义和使用数组 113
5.1.2 使用ForEach...Next循环 116
5.1.3 将数组作为参数传递 118
5.1.4 数组的排序 120
5.1.5 反向检索 120
5.1.6 用值初始化数组 122
5.2 枚举 123
5.2.1 使用枚举 123
5.2.2 确定状态 126
5.2.3 设置无效值 128
5.3 常量 129
5.3.1 使用常量 129
5.3.2 各种常量类型 131
5.4 结构 131
5.4.1 创建结构 131
5.4.2 为结构添加属性 134
5.5 数组列表 135
5.5.1 使用数组列表 135
5.5.2 在数组列表中进行删除操作 138
5.5.3 显示数组列表中的项 141
5.6 集合 142
5.6.1 创建Customer Collection类 143
5.6.2 添加Item属性 144
5.7 使用散列表创建查询表 146
5.7.1 使用散列表 146
5.7.2 Remove、RemoveAt和Clear方法 149
5.7.3 区分大小写 151
5.8 高级数组操作 152
5.8.1 动态数组 152
5.8.2 使用Preserve关键字 154
5.9 小结 155
5.10 练习 155
第6章 构建Windows应用程序 157
6.1 响应事件 157
6.2.1 构建窗体 161
6.2 创建简单的应用程序 161
6.2.2 统计字符 163
6.2.3 统计单词 164
6.2.4 创建Show Me!按钮代码 167
6.3 创建更复杂的应用程序 168
6.3.1 文本操纵项目 168
6.3.2 创建工具栏 169
6.3.3 创建状态栏 171
6.3.4 创建编辑框 173
6.3.5 清除编辑框 173
6.3.6 响应工具栏按钮 175
6.3.7 焦点 179
6.4 使用多个窗体 180
6.5 小结 183
6.6 练习 184
7.1 MessageBox对话框 185
第7章 显示对话框 185
7.1.1 MessageBox中的可用图标 186
7.1.2 MessageBox中的可用按钮 186
7.1.3 设置默认按钮 187
7.1.4 其他选项 187
7.1.5 Show方法的语法 187
7.1.6 MessageBox的示例 189
7.2 Open对话框 192
7.2.1 OpenFileDialog控件 192
7.2.2 OpenFileDialog的属性 193
7.2.3 OpenFileDialog的方法 194
7.2.4 使用OpenFileDialog控件 194
7.3.1 SaveFileDialog的属性 198
7.3 SaveFileDialog控件 198
7.3.2 SaveFileDialog的方法 199
7.3.3 使用SaveFileDialog控件 199
7.4 FontDialog控件 203
7.4.1 FontDialog的属性 203
7.4.2 FontDialog的方法 204
7.4.3 使用FontDialog控件 204
7.5 ColorDialog控件 206
7.5.1 ColorDialog的属性 207
7.5.2 使用ColorDialog控件 207
7.6 PrintDialog控件 209
7.6.1 PrintDialog的属性 209
7.6.4 打印文档 210
7.6.2 使用PrintDialog控件 210
7.6.3 PrintDocument类 210
7.7 FolderBrowserDialog控件 216
7.7.1 FolderBrowserDialog控件的属性 217
7.7.2 使用FolderBrowserDialog控件 217
7.8 小结 220
7.9 练习 220
第8章 创建菜单 223
8.1 菜单功能概述 223
8.1.1 图形 223
8.1.3 快捷键 224
8.1.4 复选标记 224
8.1.2 访问键 224
8.1.5 Properties窗口 225
8.2 创建菜单 226
8.2.1 设计菜单 226
8.2.2 添加工具栏和控件 228
8.2.3 为菜单编写代码 229
8.2.4 为View菜单和工具栏编码 234
8.2.5 测试代码 235
8.3 上下文菜单 237
8.3.1 创建上下文菜单 238
8.3.2 激活和禁用菜单项和工具栏按钮 241
8.4 小结 244
8.5 练习 244
9.1 主要错误类型 245
第9章 调试和错误处理 245
9.1.1 语法错误 246
9.1.2 执行错误 248
9.1.3 逻辑错误 249
9.2 调试 250
9.2.1 创建示例项目 250
9.2.2 设置断点 265
9.2.3 使用Watch窗口进行调试 271
9.2.4 使用Locals窗口进行调试 273
9.3 错误处理 274
9.4 小结 277
9.5 练习 277
10.1 对象的概念 279
第10章 构建对象 279
10.1.1 封装 280
10.1.2 方法和属性 280
10.1.3 事件 281
10.1.4 可见性 281
10.1.5 类的概念 282
10.2 构建类 282
10.3 复用性 283
10.4 设计对象 284
10.4.1 状态 285
10.4.2 行为 285
10.4.3 存储状态 285
10.4.4 属性 288
10.4.5 读/写属性 291
10.4.6 IsMoving方法 294
10.5 构造函数 295
10.6 继承 297
10.6.1 添加新方法和属性 298
10.6.2 添加GetPowerToWeightRatio方法 301
10.6.3 改变默认值 302
10.6.4 多态性 304
10.6.5 重写更多的方法 304
10.6.6 从对象类中继承 306
10.7 对象和结构 307
10.8 Framework类 307
10.8.1 命名空间 307
10.8.2 Imports语句 309
10.8.3 创建自己的命名空间 310
10.8.4 Framework中的继承 312
10.9 小结 312
10.10 练习 312
第11章 高级面向对象技术 315
11.1 构建收藏页浏览程序 315
11.1.1 Internet快捷方式和收藏页 315
11.1.2 使用类 317
11.1.3 搜索收藏页 322
11.1.4 查看收藏页 329
11.2 另一个收藏页浏览程序 331
11.2.1 构建收藏页任务栏图标 332
11.2.2 显示收藏页 334
11.3.1 使用共享过程 338
11.3 共享属性和方法 338
11.3.2 使用共享方法 342
11.4 面向对象的编程和内存管理 344
11.4.1 垃圾回收 345
11.4.2 释放资源 345
11.4.3 整理碎片和压缩 346
11.5 小结 347
11.6 练习 348
第12章 建立类库 349
12.1 理解类库 349
12.1.1 创建类库 350
12.1.2 为Favorites Viewer创建类库 351
12.2 使用强名 354
12.1.3 多层应用程序 354
12.2.1 为程序集签名 355
12.2.2 程序集的版本 357
12.3 注册程序集 357
12.3.1 Gacutil实用程序 357
12.3.2 程序集在Reference对话框中不可见的原因 358
12.4 设计类库 359
12.5 使用第三方的类库 360
12.6 用对象浏览器查看类 361
12.7 小结 362
12.8 练习 362
第13章 创建自定义控件 363
13.1 Windows窗体控件 363
13.2.1 添加属性 367
13.2 为用户控件添加属性 367
13.2.2 给用户控件添加方法 368
13.2.3 给用户控件添加事件 369
13.3 设计期间和运行期间 374
13.4 创建窗体库 376
13.4.1 构建窗体库项目 376
13.4.2 测试FormsLibrary 383
13.4.3 挂起事件 385
13.5 小结 388
13.6 练习 388
第14章 编写自定义图形 389
14.1 创建一个简单的绘图程序 389
14.1.1 创建带有用户控件的项目 389
14.1.2 绘图程序 390
14.1.3 GraphicsItem类 391
14.1.4 屏幕和客户坐标 394
14.1.5 使用鼠标和绘制GraphicsCircle对象 395
14.1.6 使控件无效 399
14.1.7 优化绘制 400
14.1.8 选择颜色 401
14.1.9 响应单击事件 406
14.2 处理两种颜色 409
14.2.1 表明指派的按钮 411
14.2.2 使用高级颜色 418
14.2.3 使用不同的工具 421
14.3 图像 426
14.3.1 绘制图像 427
14.3.2 缩放图像 428
14.3.3 锁定纵横比 430
14.4 更多的图形方法 433
14.5 小结 433
第15章 访问数据库 435
15.1 数据库的概念 435
15.1.1 Microsoft Access对象 435
15.1.2 表 436
15.1.3 查询 436
15.2 SQL中的SELECT语句 436
15.3 Access中的查询 438
15.4 数据访问组件 441
15.4.2 DataGridView组件 442
15.4.1 DataSet组件 442
15.4.3 BindingSource组件 443
15.4.4 BindingNavigator组件 443
15.4.5 TableAdapter组件 443
15.5 数据绑定 443
15.6 小结 449
15.7 练习 449
第16章 使用ADO.NET和SQL Server进行数据库编程 451
16.1 ADO.NET 452
16.1.1 ADO.NET数据命名空间 452
16.1.2 SqlConnection类 453
16.1.3 SqlCommand类 455
16.1.4 SqlDataAdapter类 457
16.1.6 DataView类 461
16.1.5 DataSet类 461
16.2 使用ADO.NET类 464
16.3 数据绑定 472
16.3.1 BindingContext和CurrencyManager对象 472
16.3.2 绑定控件 473
16.4 小结 500
16.5 练习 501
第17章 Web窗体 503
17.1 瘦客户端体系结构 503
17.2 Web窗体和Windows窗体的比较 504
17.2.1 Windows窗体的优点 505
17.2.2 Web窗体的优点 505
17.3.3 HTML 506
17.3.4 VBScript与JavaScript 506
17.3 Web应用程序基础 506
17.3.2 浏览器 506
17.3.1 Web服务器 506
17.3.5 CSS 507
17.4 Active Server Page 507
17.4.1 ASP的优点 507
17.4.2 特殊的Web站点文件 507
17.4.3 开发 508
17.4.4 Toolbox控件 508
17.5 构建Web应用程序 509
17.5.1 为客户端和服务器端处理创建Web窗体 509
17.5.2 执行数据的输入和验证 514
17.5.3 设计站点的外观 518
17.5.4 使用GridView构建数据驱动的Web页面 527
17.5.5 VS 2005中Web站点的位置 532
17.6 小结 534
17.7 练习 535
第18章 窗体验证 537
18.1 Web站点验证 537
18.1.1 窗口验证 537
18.1.2 窗体验证 538
18.1.3 Web站点管理工具 538
18.1.4 登录控件 545
18.2 小结 557
18.3 练习 557
19.1 XML简介 559
第19章 Visual Basic 2005和XML 559
19.1.1 XML的特性 560
19.1.2 向Visual Basic编程新手介绍XML 562
19.2 地址簿项目 562
19.2.1 创建项目 562
19.2.2 SerializableData类 563
19.2.3 载入XML文件 569
19.2.4 改变数据 572
19.2.5 发送Email 572
19.2.6 创建地址列表 574
19.2.7 忽略成员 578
19.2.8 载入地址 580
19.2.9 添加新地址 581
19.2.10 地址导航 583
19.2.11 删除地址 584
19.3 集成地址簿应用程序 586
19.3.1 集成规则 587
19.3.2 从其他应用程序中读取Address Book 588
19.4 小结 593
19.5 练习 593
第20章 Web Services和.NET Remoting技术 595
20.1 Web服务概述 595
20.1.1 Web服务的工作方式 596
20.1.2 简单对象访问协议 597
20.2 构建Web服务 598
20.2.1 Web服务示例 598
20.2.2 添加更多方法 601
20.3.1 创建项目 602
20.3 图片服务器服务 602
20.3.2 返回数组 604
20.3.3 返回复杂信息 608
20.4 图片服务器客户程序 612
20.4.1 Web服务描述语言 612
20.4.2 创建客户程序 612
20.4.3 添加Web引用 614
20.4.4 显示文件夹列表 615
20.4.5 显示文件列表并选择文件 618
20.5 .NET Remoting技术 622
20.6 小结 628
20.7 练习 628
21.1 部署 631
第21章 部署应用程序 631
21.1.1 ClickOnce部署 632
21.1.2 XCOPY部署 636
21.2 创建Visual Studio 2005安装程序 636
21.3 用户界面编辑器 639
21.4 部署不同的解决方案 642
21.4.1 私有程序集 642
21.4.2 共享程序集 643
21.4.3 部署桌面应用程序 643
21.4.4 部署Web应用程序 644
21.4.5 部署XML Web服务 644
21.4.6 有效的工具 644
21.6 练习 645
21.5 小结 645
第22章 构建移动应用程序 647
22.1 理解环境 647
22.1.1 公共语言运行库 648
22.1.2 ActiveSync 648
22.1.3 Compact Framework中的通用类型 649
22.1.4 Compact Framework类 650
22.2 构建一个Pocket PC游戏 652
22.3 小结 663
22.4 练习 664
附录A 如何深入学习 665
附录B 实现MSF 669
附录C 安全介绍 677
附录D 练习题答案 683