目录 1
第1篇 Windows高级编程 1
第1章 创建高级Windows应用程序 1
1.1 Windows应用程序的种类 1
1.2 资源管理器样式应用程序的创建 3
1.2.1 Splitter控件 4
1.2.2 ImageList控件 6
1.2.3 LstView控件 8
1.2.4 TreeView控件 13
1.3 多文档应用程序的创建 23
1.3.1 菜单 23
1.3.2 上下文菜单 28
1.3.3 工具条 30
1.3.4 状态条 34
1.3.5 添加子窗体 36
1.3.6 添加代码 37
1.4 窗体的继承 42
1.5 对话框 45
1.5.1 Date类型 45
1.5.2 日期显示实例 47
1.6 小结 54
第2章 打印和打印预览 55
2.1 打印组件 55
2.1.1 页面设置对话框 55
2.1.2 打印设置对话框 58
2.1.3 打印预览对话框 62
2.1.4 打印文档组件 63
2.2 打印实例 65
2.3 小结 74
第3章 拖放操作和剪贴板 75
3.1 基本概念 75
3.2 应用程序内的拖放操作 79
3.3 应用程序间的拖放操作 89
3.4 剪贴板 92
3.5 小结 96
第4章 创建Windows服务程序 97
4.1 服务的创建 97
4.1.1 ServiceBase类 98
4.1.2 创建服务 101
4.2 服务的安装 104
4.3 访问服务 109
4.4 访问服务实例 112
4.5 小结 117
第2篇 面向对象编程和组件编程 118
第5章 创建类库应用程序 118
5.1 创建工程 118
5.2 添加类 119
5.2.1 创建域和属性 120
5.2.2 创建方法 127
5.2.3 创建构造器 131
5.2.4 事件和委托 133
5.3 添加接口 139
5.3.1 创建接口 140
5.3.2 实现接口 141
5.3.3 使用接口 147
5.3.4 接口的设计原则 148
5.4 使用自定义类库 150
5.5 对象的生命周期 151
5.5.1 垃圾收集 152
5.5.2 对象的终止 153
5.6 获得类的动态信息 154
5.7 命名空间 157
5.8 结构 158
5.9 小结 161
第6章 继承与多态 162
6.1 类的继承 162
6.1.1 类中成员的处理 162
6.1.2 Me、MyClass和MyBase关键字 171
6.1.3 抽象类与不可继承类 174
6.1.4 子类对象的创建和销毁 178
6.1.5 继承使用的原则 180
6.2 接口的继承 180
6.3 多态 182
6.3.1 通过继承实现多态 183
6.3.2 通过接口实现多态 184
6.4 继承与多态的实例 185
6.5 小结 192
第7章 组件编程 193
7.1 创建组件 193
7.1.1 相关概念 193
7.1.2 创建组件应用程序 194
7.1.3 使用自定义组件 197
7.2 创建Windows控件 199
7.2.1 创建计算器控件实例 199
7.2.2 创建眼睛控件 205
7.2.3 使用自定义控件 211
7.3 小结 212
8.1.1 线程的创建 213
8.1 多线程的应用 213
第8章 创建多线程应用程序 213
第3篇 高级应用 213
8.1.2 多线程的使用 217
8.2 线程 223
8.2.1 线程的状态 225
8.2.2 线程的优先级 233
8.3 参数传递 239
8.3.1 提供参数 239
8.3.2 返回值 239
8.4 线程同步 242
8.5 小结 245
9.1.2 文件的种类 246
9.1.1 文件的结构 246
9.1 文件的结构及种类 246
第9章 文件操作 246
9.2 传统的文件访问 247
9.2.1 顺序文件的操作 250
9.2.2 随机文件的操作 253
9.2.3 二进制文件操作 257
9.3 System.IO模型 258
9.3.1 文件 258
9.3.2 目录 262
9.3.3 流操作 264
9.3.4 BinaryReader类和BinaryWriter类 273
9.3.5 TextReader类和TextWriter类 276
9.4 文件系统对象模型 282
9.5 小结 291
第10章 异常处理 292
10.1 非结构化错误处理 292
10.1.1 On Error语句 292
10.1.2 Err对象 298
10.2 异常 299
10.2.1 异常对象 300
10.2.2 异常分类 301
10.2.3 创建自定义异常类 302
10.2.4 抛出异常 303
10.3 捕获异常 303
10.3.1 Try语句 303
10.3.2 Catch语句 304
10.3.3 Finally语句 308
10.3.4 异常准则 309
10.4 小结 309
第11章 集合类型 310
11.1 System.Collections命名空间 310
11.2 集合 311
11.2.1 CollectionBase类 313
11.2.2 ReadOnlyCollectionBase类 323
11.3 字典 326
11.3.1 IDictionary接口 326
11.3.2 DictionaryEntry结构 327
11.3.4 DictionaryBase类 328
11.3.3 DictionaryEnumerator接口 328
11.4 列表 339
11.4.1 IList接口 339
11.4.2 IIComparer接口 340
11.4.3 IComparable接口 341
11.4.4 ArrayList类 341
11.4.5 SortedList类 354
11.5 哈希表 365
11.5.1 IhashCodeProvider接口 365
11.5.2 CaseInsensitiveHashCodeProvider类 365
11.5.3 Hashtable类 366
11.6 堆栈 377
11.7 队列 380
11.8 位数组 382
11.9 小结 384
第12章 网络编程 385
12.1 基本概念 385
12.1.1 TCP/IP协议 385
12.1.2 客户机/服务器模型 386
12.1.3 Socket 386
12.1.4 IP地址 387
12.1.5 端点 389
12.2 Socket类 390
12.2.1 Socket的创建 391
12.2.2 Socket接口 393
12.2.3 无连接的编程模式 395
12.2.4 面向连接的编程模式 396
12.2.5 数据的接收和发送 397
12.3 TCP编程 405
12.3.1 TcpListener类 405
12.3.2 TcpClient类 410
12.4 UDP编程 413
12.5 小结 416
第13章 数据访问 417
13.1 ADO.NET介绍 417
13.1.1 ADO.NET Data Provider 417
13.1.2 ADO.NET DataSet 418
13.1.3 ADO.NET与ADO的比较 419
13.2 创建和使用Connection对象 420
13.1.4 ADO.NET数据库访问的一般步骤 420
13.3 创建和使用Command对象 423
13.3.1 Command对象的创建 425
13.3.2 参数的使用 428
13.3.3 存储过程的使用 433
13.3.4 事务 434
13.3.5 异常处理 437
13.4 DataReader的使用 440
13.5 创建和使用DataAdapter 443
13.5.1 DataAdapter 443
13.5.2 DataTableMapping和DataColumnMapping 449
13.6.1 DataSet 453
13.6 创建和使用DataSet 453
13.6.2 DataTable 460
13.6.3 DataColumn 464
13.6.4 DataRelation 467
13.6.5 Constraint 472
13.6.6 DataRow 476
13.6.7 更新数据 482
13.7 数据视图 504
13.7.1 DataView类 505
13.7.2 DataRowView类 512
13.7.3 DataViewManager类 513
13.8 小结 515