第1章 C#概述 1
1.1 C#的历史与发展 1
1.1.1 C#的历史 1
1.1.2 C#的特点 1
1.1.3 C、C++、C#和Java 2
1.1.4 C#应用程序类型 2
1.2 VisualStudio 2008开发环境 3
1.2.1 Visual Studio 2008简介 3
1.2.2 Visual Studio 2008集成开发环境介绍 3
1.2.3 Visual Studio 2008特色功能介绍 7
1.3 第一个C#控制台程序 9
1.3.1 C#程序结构 10
1.3.2 编译和运行程序 11
1.4 输入输出操作 12
1.4.1 Console.WriteLine()方法和Console.Write()方法 12
1.4.2 Console.ReadLine()方法和Console.Read()方法 13
习题1 15
实训案例1 熟悉C#编程环境 15
第2章 C#编程基础 16
2.1 基本数据类型 16
2.1.1 值类型 16
2.1.2 引用类型 18
2.1.3 类型转换 19
2.2 C#中的变量和常量 22
2.2.1 变量 22
2.2.2 常量 23
2.3 表达式 23
2.3.1 算术运算符 24
2.3.2 关系运算符 24
2.3.3 逻辑运算符 24
2.3.4 赋值运算符 24
2.3.5 条件运算符 25
2.3.6 运算符及其优先级 25
2.4 结构类型 26
2.5 数组 27
2.5.1 一维数组 28
2.5.2 二维数组 29
2.5.3 System.Array 31
2.6 C#常用的公共类及其方法 32
习题2 35
实训案例2 结构体和数组的使用 36
第3章 结构化程序设计 40
3.1 结构化程序设计的概念 40
3.2 顺序结构 40
3.3 进择结构 40
3.3.1 if语句 40
3.3.2 switch语句 42
3.4 循环结构 43
3.4.1 while语句和do...while语句 44
3.4.2 for语句和foreach语句 45
3.4.3 break语句 46
3.4.4 continue语句 46
3.4.5 goto语句 47
3.5 典型算法分析 47
3.5.1 冒泡排序 47
3.5.2 插入排序 48
3.5.3 选择排序 49
3.5.4 迭代算法 50
3.5.5 递归算法 51
3.6 程序调试 51
习题3 53
实训案例3 C#基础知识运用 54
第4章 面向对象编程基础 59
4.1 面向对象的基本概念 59
4.2 类与对象 59
4.2.1 类的定义 60
4.2.2 创建对象 61
4.2.3 类关系图 62
4.3 属性 63
4.4 方法 66
4.4.1 方法的定义 67
4.4.2 方法的参数 67
4.4.3 方法重载 72
4.5 构造函数与析构函数 74
4.5.1 构造函数 74
4.5.2 带参数的构造函数 75
4.5.3 析构函数 77
4.5.4 this关键字 77
4.6 静态类和静态类成员 79
4.7 命名空间 80
4.7.1 命名空间的声明 81
4.7.2 命名空间的使用 81
习题4 82
实训案例4 类和对象的应用 83
第5章 继承、多态和接口 87
5.1 类的继承 87
5.1.1 定义派生类 87
5.1.2 System.Object类 90
5.1.3 派生类的构造函数和析构函数 91
5.1.4 base关键字 92
5.1.5 is和as关键字 94
5.2 多态性 95
5.2.1 继承多态 95
5.2.2 重载与覆盖的区别 97
5.3 抽象类和抽象方法 97
5.3.1 抽象类 97
5.3.2 抽象方法 98
5.3.3 抽象类实现多态 98
5.4 接口 101
5.4.1 接口的声明 101
5.4.2 接口的实现 102
5.5 委托 104
5.5.1 C语言中的函数指针 104
5.5.2 委托建立 105
5.5.3 使用多播委托 106
5.6 异常处理 108
5.6.1 try...catch语句 108
5.6.2 try...catch...finally语句 109
5.6.3 throw语句 110
5.6.4 自定义异常 111
习题5 112
案例实训5 类的继承和抽象类的使用 113
第6章 Windows应用程序 118
6.1 Windows应用程序开发步骤 118
6.1.1 创建项目 118
6.1.2 用户界面设计 118
6.1.3 编写程序代码 119
6.1.4 编译运行 119
6.2 Windows窗体 119
6.2.1 Windows窗体的基本属性 120
6.2.2 Windows窗体常用方法 120
6.2.3 Windows窗体常用事件 121
6.2.4 在项目中添加窗体、设置启动窗体 121
6.2.5 窗体的显示与隐藏 122
6.3 Windows控件概述 123
6.3.1 控件的基本属性 123
6.3.2 控件的事件 125
6.4 Label控件、Button控件和TextBox控件 125
6.4.1 Label控件 125
6.4.2 Button控件 126
6.4.3 TextBox控件 126
6.5 RadioButton控件、GroupBox控件、CheckBox控件 128
6.5.1 RadioButton控件和GroupBox控件 128
6.5.2 CheckBox控件 129
6.6 ListBox控件、ComboBox 控件 130
6.6.1 ListBox控件 130
6.6.2 ComboBox控件 132
6.7 PictureBox控件、ImageList控件 134
6.7.1 PictureBox控件 134
6.7.2 ImageList控件 135
6.8 Timer控件和ProgressBar控件 136
6.8.1 Timer控件 136
6.8.2 ProgressBar控件 136
习题6 138
实训案例6 设计简单的计算器 139
第7章 菜单和MDI多窗体应用程序设计 145
7.1 菜单 145
7.1.1 MenuStrip控件 146
7.1.2 ContentMenuStrip控件 147
7.1.3 ToolsStrip工具栏控件 148
7.1.4 StatusStrip控件 149
7.2 MDI多窗体应用程序设计 150
习题7 151
实训案例7 学生信息管理系统界面设计 152
第8章 通用对话框和文件操作 156
8.1 通用对话框 156
8.1.1 MessageBox 156
8.1.2 OpenFileDialog控件 157
8.1.3 SaveFileDialog控件 158
8.1.4 FontDialog控件 159
8.1.5 ColorDialog控件 159
8.2 文件与目录 160
8.2.1 File类常用的方法 160
8.2.2 Directory类和DirectoryInfo类 161
8.2.3 Path类 162
8.3 文件的读写操作 162
8.3.1 FileStream类 163
8.3.2 StreamReader类和StreamWriter类 163
习题8 164
实训案例8 记录登录日志 165
第9章 使用ADO.NET访问数据库 168
9.1 C#数据库开发环境介绍 168
9.1.1 SQLServer 2005 Express简介 168
9.1.2 服务器资源管理器 168
9.1.3 连接SQLServer 2005 170
9.2 ADO.NET简介 171
9.3 连接数据库 172
9.3.1 数据库连接字符串 172
9.3.2 使用Connection对象创建数据库连接 173
9.3.3 将数据库连接字符串保存在App.Config文件中 174
9.4 利用Command操作数据库中的数据 175
9.5 DataReader对象 178
9.6 DataSet对象和DataAdapter对象 180
9.6.1 DataSet对象 180
9.6.2 DataAdapter对象 181
9.6.3 使用CommandBuilder对象简化DataAdapter对象更新操作 188
9.7 使用存储过程 188
9.7.1 创建存储过程 189
9.7.2 在ADO.NET中使用存储过程 189
9.8 数据绑定 190
9.8.1 简单型数据和复杂型数据绑定 190
9.8.2 DataGridView控件 193
9.8.3 BindingSource控件、BindingNavigator控件 196
习题9 198
实训案例9 数据库应用——实现登录验证 200
第10章 学生信息管理系统开发 202
10.1 需求分析 202
10.1.1 需要分析 202
10.1.2 系统总体设计 202
10.2 数据库设计 203
10.3 详细设计 204
10.3.1 软件设计的三层结构 204
10.3.2 建立应用程序 205
10.4 系统实现 207
10.4.1 数据访问层 207
10.4.2 业务逻辑层 211
10.4.3 表示层 212
10.5 部署应用程序 214
参考文献 218