第1章 C#概述 1
1.1 C#简介 1
1.1.1 C#语言的发展 1
1.1.2 C#语言的特点 2
1.2 C#程序的开发环境 3
1.2.1 Visual Studio.NET的基本操作 4
1.2.2 Visual Studio.NET解决方案和项目文件的组织结构 7
1.2.3 Visual Studio.NET的帮助 8
1.3 C#程序入门 10
1.3.1 一个简单的C#控制台应用程序 10
1.3.2 一个简单的Win 32应用程序 12
1.3.3 一个具有输入功能的Win 32应用程序 15
1.3.4 一个简单的Web应用程序 17
1.3.5 C#程序的特点 19
习题 20
上机实验1 21
第2章 C#程序设计基础 22
2.1 常量与变量 22
2.1.1 常量 22
2.1.2 变量 24
2.2 C#的数据类型 26
2.2.1 简单类型 26
2.2.2 枚举型enum 27
2.2.3 结构型struct 28
2.2.4 数据类型转换 30
2.3 运算符与表达式 31
2.3.1 算术运算符与表达式 32
2.3.2 赋值运算符与表达式 33
2.3.3 关系运算符与表达式 34
2.3.4 逻辑运算符与表达式 35
2.4 数组和字符串 36
2.4.1 一维数组 36
2.4.2 多维数组 39
2.4.3 数组型的数组 40
2.4.4 字符串string 42
习题 44
上机实验2 45
第3章 C#程序的流程控制 47
3.1 C#程序的分支语句 47
3.1.1 if语句 47
3.1.2 switch语句 49
3.1.3 分支语句的嵌套 52
3.2 C#程序的循环语句 54
3.2.1 while语句 54
3.2.2 do/while语句 55
3.2.3 for语句 56
3.2.4 foreach语句 58
3.2.5 循环语句的嵌套 60
3.3 跳转语句 62
3.3.1 goto语句 62
3.3.2 break语句 63
3.3.3 continue语句 64
习题 66
上机实验3 67
第4章 面向对象程序设计入门 69
4.1 面向对象的基本概念 69
4.1.1 对象 70
4.1.2 事件与方法 70
4.1.3 类与对象 71
4.1.4 抽象、封装、继承与多态 71
4.2 类的定义 73
4.2.1 类的声明和实例化 73
4.2.2 类的数据成员和属性 76
4.2.3 类的可访问性 79
4.2.4 值类型与引用类型 79
4.3 类的方法 81
4.3.1 方法的声明与调用 81
4.3.2 方法的参数传递 83
4.3.3 方法的重载 91
4.4 构造函数 93
4.4.1 构造函数的声明和调用 93
4.4.2 构造函数的重载 94
4.4.3 构造函数与只读字段 96
4.4.4 对象的生命周期和析构函数 97
习题 98
上机实验4 99
第5章 面向对象的高级程序设计 102
5.1 静态成员与静态类 102
5.1.1 静态成员 102
5.1.2 静态构造函数 105
5.1.3 静态类 106
5.2 类的继承性与多态性 106
5.2.1 类的继承性 106
5.2.2 类的多态性 111
5.3 抽象类与接口 115
5.3.1 抽象类 115
5.3.2 接口 119
5.3.3 抽象类与接口的比较 125
5.4 嵌套类、分部类与命名空间 125
5.4.1 嵌套类 125
5.4.2 分部类 127
5.4.3 命名空间 129
习题 130
上机实验5 131
第6章 集合、索引器与泛型 135
6.1 集合 135
6.1.1 集合概述 135
6.1.2 ArrayList 136
6.1.3 哈希表Hashtable 141
6.1.4 栈和队列 143
6.2 索引器 144
6.2.1 索引器的定义与使用 145
6.2.2 索引器与属性的比较 149
6.3 泛型 149
6.3.1 泛型概述 149
6.3.2 泛型集合 150
6.3.3 泛型类、泛型方法和泛型接口 152
习题 158
上机实验6 158
第7章 程序调试与异常处理 160
7.1 程序错误 160
7.1.1 程序错误分类 160
7.1.2 调试程序错误 162
7.2 程序的异常处理 165
7.2.1 异常的概念 165
7.2.2 try-catch语句与异常处理 166
7.2.3 finally语句 168
7.2.4 throw语句与抛出异常 169
习题 170
上机实验7 170
第8章 基于事件驱动的程序设计技术 173
8.1 基于事件的编程思想 173
8.2 委托 175
8.2.1 委托概述 175
8.2.2 委托的声明、实例化与使用 175
8.2.3 多路广播与委托的组合 178
8.3 事件 179
8.3.1 事件的声明 179
8.3.2 事件的预订 181
8.3.3 事件的引用 182
8.4 基于事件的Windows编程 186
8.4.1 Windows应用程序概述 186
8.4.2 Windows窗体与事件驱动编程 188
习题 193
上机实验8 194
第9章 Windows程序的界面设计 199
9.1 窗体与控件概述 200
9.1.1 Windows窗体 200
9.1.2 窗体的控件 201
9.2 按钮与文本显示、编辑控件 203
9.2.1 按钮控件 203
9.2.2 文本显示控件 205
9.2.3 文本编辑控件 206
9.2.4 应用实例 208
9.3 列表与选择控件 210
9.3.1 RadioButton控件 210
9.3.2 CheckBox控件 211
9.3.3 ListBox控件 212
9.3.4 ComboBox控件 213
9.3.5 其他常用控件 213
9.3.6 应用实例 213
9.4 图形显示控件 217
9.4.1 PictureBox控件 217
9.4.2 ImageList控件 217
9.4.3 应用实例 218
9.5 容器控件 219
9.5.1 GroupBox控件 219
9.5.2 Panel控件 219
9.5.3 TabControl控件 219
9.5.4 应用实例 220
9.6 对话框 223
9.6.1 对话框概述 223
9.6.2 消息框 226
9.6.3 通用对话框 228
9.6.4 应用实例 230
9.7 菜单、工具栏和状态栏 231
9.7.1 菜单 231
9.7.2 工具栏 233
9.7.3 状态栏 234
9.7.4 应用实例 235
9.8 SDI和MDI应用程序 237
9.8.1 创建SDI应用程序 237
9.8.2 创建MDI应用程序 237
9.8.3 应用实例 238
习题 239
上机实验9 239
第10章 C#数据库编程技术 244
10.1 数据库与ADO.NET概述 244
10.1.1 数据库概述 244
10.1.2 SQL概述 247
10.1.3 ADO.NET概述 249
10.2 使用ADO.NET访问数据库 250
10.2.1 使用Connection对象访问数据库 251
10.2.2 使用Command对象访问数据库 252
10.2.3 使用DataReader对象访问数据库 256
10.2.4 使用DataAdaper与DataSet对象操作数据库 262
习题 267
上机实验10 267
第11章 文件操作与编程技术 270
11.1 文件的输入/输出 270
11.1.1 文件I/O与流 270
11.1.2 读写文本文件 271
11.1.3 读写二进制文件 273
11.1.4 对象的序列化 275
11.2 文件操作控件 278
11.2.1 SaveFileDialog控件 278
11.2.2 OpenFileDialog控件 280
11.2.3 FolderBrowserDialog控件 281
11.2.4 应用实例:简易的写字板程序 282
习题 285
上机实验11 286
第12章 高级数据访问与处理技术 290
12.1 XML编程 290
12.1.1 XML概述 290
12.1.2 XML文档的创建 292
12.1.3 XML文档的查询 298
12.1.4 XML文档的编辑 300
12.2 LINQ编程 304
12.2.1 LINQ概述 304
12.2.2 LINQ的查询子句 307
12.2.3 LINQ to XML的应用 311
12.2.4 LINQ to SQL的应用 313
习题 320
上机实验12 321
第13章 网络应用编程技术 323
13.1 网络编程基础 324
13.1.1 计算机网络的概述 324
13.1.2 计算机网络的通信协议 324
13.1.3 System.Net概述 325
13.2 Socket编程 333
13.2.1 Socket编程概述 333
13.2.2 TCP应用编程 335
13.2.3 UDP应用编程 341
13.3 电子邮件的发送和接收 344
13.3.1 发送邮件 344
13.3.2 接收邮件 346
习题 350
上机实验13 351
第14章 多媒体编程技术 354
14.1 GDI+绘图 354
14.1.1 GDI+概述 354
14.1.2 System.Drawing命名空间 356
14.1.3 创建Graphics对象 356
14.1.4 颜料、钢笔和画笔 357
14.1.5 点、线和图形 359
14.1.6 图像和文本 366
14.1.7 坐标系统及变换 369
14.2 Windows Media Player组件 375
14.2.1 Windows Media Player组件的介绍 375
14.2.2 Windows Media Player组件的使用 377
习题 380
上机实验14 380
参考文献 382