第1章 .NET与C#基础 1
1.1 .NET开发平台和C#语言 1
1.1.1 .NET开发平台概述 1
1.1.2 Visual Studio 2013的集成开发环境 1
1.1.3 第一个C#程序 3
1.2 Visual C# 2013开发环境 5
1.2.1 新建Windows窗体应用程序 5
1.2.2 标题栏 7
1.2.3 菜单栏 7
1.2.4 工具栏 10
1.2.5 工具箱 11
1.2.6 窗口 12
第2章 C#编程基础 15
2.1 基本类型 15
2.1.1 值类型 15
2.1.2 引用类型 17
2.1.3 值类型与引用类型的关系 18
2.2 变量与常量 20
2.2.1 常量 20
2.2.2 变量 22
2.3 表达式 23
2.3.1 算术运算符 23
2.3.2 关系运算符 24
2.3.3 逻辑运算符 25
2.3.4 位运算符 26
2.3.5 赋值运算符 28
2.3.6 条件运算符 28
2.3.7 运算符的优先级与结合性 29
2.3.8 表达式中的类型转换 29
2.4 选择语句 30
2.4.1 if语句 30
2.4.2 switch语句 32
2.5 循环语句 33
2.5.1 while语句 33
2.5.2 do-while语句 34
2.5.3 for语句 35
2.6 跳转语句 37
2.6.1 continue语句 37
2.6.2 break语句 38
2.6.3 return语句 39
2.6.4 goto语句 39
2.7 数组 42
2.7.1 数组的定义 42
2.7.2 数组的初始化 43
2.7.3 数组元素的访问 45
2.7.4 数组与System.Array 47
2.7.5 使用foreach语句遍历数组元素 49
2.8 综合应用实例 50
第3章 面向对象编程基础 53
3.1 面向对象概念 53
3.1.1 对象、类、实例化 54
3.1.2 面向对象程序设计语言的三大原则 54
3.2 类 56
3.2.1 类的声明 56
3.2.2 类的成员 57
3.2.3 构造函数 59
3.2.4 析构函数 64
3.3 方法 65
3.3.1 方法的声明 66
3.3.2 方法的参数 68
3.3.3 静态方法与实例方法 73
3.3.4 方法的重载与覆盖 75
3.4 属性 79
3.5 综合应用实例 83
第4章 面向对象编程进阶 89
4.1 类的继承与多态 89
4.1.1 继承 89
4.1.2 多态 94
4.2 操作符重载 99
4.3 类型转换 104
4.3.1 隐式类型转换 104
4.3.2 显式类型转换 107
4.3.3 使用Convert转换 108
4.4 结构与接口 110
4.4.1 结构 110
4.4.2 接口 111
4.5 集合与索引器 114
4.5.1 集合 114
4.5.2 索引器 117
4.6 异常处理 119
4.6.1 异常与异常类 119
4.6.2 异常处理 121
4.7 委托与事件 125
4.7.1 委托 125
4.7.2 事件 128
4.8 预处理命令 130
4.8.1 #define、#undef指令 130
4.8.2 #if、#elif、#else、#endif指令 131
4.8.3 #warning、#error指令 132
4.8.4 #region、#endregion指令 132
4.8.5 #line指令 132
4.9 组件与程序集 132
4.9.1 组件 132
4.9.2 程序集 133
4.10 泛型 136
第5章 Windows应用程序开发 139
5.1 应用程序的开发步骤 139
5.2 窗体 141
5.2.1 创建Windows应用程序项目 141
5.2.2 选择启动窗体 142
5.2.3 窗体属性 142
5.2.4 窗体的常用方法和事件 144
5.3 Windows控件使用 145
5.3.1 常用控件 145
5.3.2 Label控件和Link Label控件 147
5.3.3 Button控件 148
5.3.4 TextBox控件 149
5.3.5 RadioButton控件 152
5.3.6 CheckBox控件 152
5.3.7 ListBox控件 153
5.3.8 ComboBox控件 154
5.3.9 GroupBox控件 155
5.3.10 ListView控件 156
5.3.11 PictureBox控件 158
5.3.12 StatusStrip控件 158
5.3.13 Timer控件 159
5.4 菜单 161
5.4.1 在设计时创建菜单 161
5.4.2 以编程方式创建菜单 161
5.4.3 上下文菜单 162
5.5 对话框 165
5.5.1 消息框 165
5.5.2 窗体对话框 166
5.5.3 通用对话框 167
5.6 多文档界面 172
5.6.1 创建MDI父窗体 173
5.6.2 创建MDI窗体 173
5.6.3 确定活动的MDI子窗体 174
5.6.4 排列子窗体 175
5.7 打印与打印预览 175
5.7.1 在设计时创建打印作业 175
5.7.2 选择打印机打印文件 176
5.7.3 打印图形 176
5.7.4 打印文本 177
5.8 综合应用实例 177
第6章 GDI+编程 179
6.1 GDI+简介 179
6.1.1 坐标系 179
6.1.2 像素 180
6.1.3 Graphics类 180
6.2 绘图 182
6.2.1 画笔 182
6.2.2 画刷 182
6.2.3 绘制直线 183
6.2.4 绘制矩形 184
6.2.5 绘制椭圆 185
6.2.6 绘制圆弧 186
6.2.7 绘制多边形 188
6.3 颜色 189
6.4 文本输出 190
6.4.1 字体 190
6.4.2 输出文本 191
6.5 图像处理 191
6.5.1 绘制图像 191
6.5.2 刷新图像 192
6.6 综合应用实例 192
第7章 文件操作 198
7.1 文件概述 198
7.2 System.IO模型 199
7.2.1 System.IO命名空间的资源 199
7.2.2 System.IO命名空间的功能 200
7.3 文件与目录类 201
7.3.1 Directory类和DirectoryInfo类 201
7.3.2 File类和FileInfo类 202
7.3.3 Path类 204
7.3.4 读取驱动器信息 205
7.4 文件的读与写 206
7.4.1 流 206
7.4.2 读写文件 207
7.4.3 读写二进制文件 208
7.5 综合应用实例 210
第8章 数据库应用 215
8.1 数据库基础 215
8.1.1 数据库和数据库管理系统 215
8.1.2 表和视图 216
8.1.3 用VS2013创建数据库和表 217
8.1.4 结构化查询语言(SQL) 219
8.2 ADO.NET概述 224
8.3 创建连接 226
8.3.1 创建Connection对象 226
8.3.2 使用Connection对象 227
8.4 Command对象与DataReader对象 229
8.4.1 创建Command对象 229
8.4.2 使用Command对象操作数据 229
8.4.3 创建DataReader对象 230
8.4.4 使用DataReader对象检索数据 231
8.5 DataSet对象与DataAdapter对象 234
8.5.1 DataSet对象 234
8.5.2 DataAdapter对象 238
8.6 综合应用实例 240
第9章 多线程编程 244
9.1 线程概述 244
9.1.1 多线程工作方式 245
9.1.2 什么时候使用多线程 245
9.2 创建并控制线程 246
9.2.1 线程的建立与启动 246
9.2.2 线程的挂起、恢复与终止 247
9.2.3 线程的状态及优先级 250
9.3 线程的同步和通信 253
9.3.1 lock关键字 253
9.3.2 线程监视器 254
9.3.3 线程间的通信 255
9.3.4 子线程访问主线程的控件 257
9.4 线程池和定时器 259
9.4.1 线程池 259
9.4.2 定时器 259
9.5 互斥对象 260
9.6 综合应用实例 261
习题 264
第1章 .NET与C#基础 264
第2章 C#编程基础 265
第3章 面向对象编程基础 269
第4章 面向对象编程进阶 272
第5章 Windows应用程序开发 274
第6章 GDI+编程 276
第7章 文件操作 276
第8章 数据库应用 277
第9章 多线程编程 278
实验 280
实验1.NET与C#基础 280
实验2 C#编程基础 281
实验3 面向对象编程基础 286
实验4 面向对象编程进阶 294
实验5 Windows应用程序开发 299
实验6 GDI+编程 303
实验7 文件操作 306
实验8 数据库应用 307
实验9 多线程编程 312