普通高等学校计算机教育“十二五”规划教材

C#程序设计教程(第3版)

分享 推荐 2 收藏 5 阅读 4.5K
马骏 (主编) 978-7-115-33100-7

关于本书的内容有任何问题,请联系 张斌


1."十二五"普通高等教育本科国家级规划教材
2.全书内容是作者经过多年教学验证的,案例来自于作者实际开发工作,实用性强
3.书中配有实验内容,教材配套资料全
4.对基本概念的讲解透彻,条理清晰,步骤详细,非常适合自学

内容摘要


本书主要介绍C# 语言、WinForm 和WPF 应用程序开发的基础知识。全书共14 章,前6 章介绍C# 语言和WinForm 开发的基础知识,包括开发环境、基本数据类型、流程控制语句、类和结构、接口委托与事件、泛型与LINQ、目录与文件操作等;后8 章介绍如何开发WPF 应用程序,包括WPF 控件、资源与样式控制、动画与多媒体、数据绑定与数据验证、数据库与实体数据模型、二维图形图像处理、三维图形和三维呈现。同时在附录中给出了本书的上机练习和综合实验。

目录

目 录
  
第 1篇 C#程序设计基础

第 1章 C#代码编写基础 2
1.1 C#语言和VS2012开发环境 2
1.1.1 C#语言和.NET框架 2
1.1.2 VS2012开发环境 3
1.2 C#项目的组织 4
1.2.1 命名空间 4
1.2.2 using关键字 4
1.2.3 Main方法 5
1.2.4 代码注释 5
1.2.5 通过断点调试C#程序 6
1.3 控制台应用程序 7
1.3.1 控制台应用程序的输入与输出 7
1.3.2 在控制台应用程序中输出格式化数据 8
1.4 Windows窗体应用程序 12
1.4.1 Windows窗体应用程序的特点 12
1.4.2 Windows窗体应用程序的启动和退出 13
1.4.3 窗体的创建、显示、隐藏和关闭 13
1.4.4 消息框(MessageBox) 16
1.4.5 利用WinForm控件实现输入和输出 17
1.4.6 错误提示(ErrorProvider) 21
1.5 WPF和Silverlight应用程序 23
1.5.1 WPF应用程序 23
1.5.2 Silverlight应用程序 23
1.6 其他应用程序模板 24
习题 24

第 2章 基本数据类型和流程控制语句 25
2.1 数据类型和运算符 25
2.1.1 C#的类型系统 25
2.1.2 常量与变量 26
2.1.3 运算符与表达式 27
2.2 简单类型 28
2.2.1 整型 29
2.2.2 浮点型 29
2.2.3 布尔型(bool) 30
2.2.4 字符(char) 30
2.2.5 枚举(enum) 31
2.3 字符串 33
2.3.1 字符串的创建与表示形式 33
2.3.2 字符串的常用操作方法 34
2.3.3 String与StringBuilder 37
2.4 数组 37
2.4.1 一维数组 38
2.4.2 多维数组 38
2.4.3 交错数组 39
2.4.4 数组的常用操作方法 41
2.5 数据类型之间的转换 43
2.5.1 值类型之间的数据转换 43
2.5.2 值类型和引用类型之间的转换 44
2.6 流程控制语句 45
2.6.1 分支语句 45
2.6.2 循环语句 51
2.6.3 跳转语句 54
2.6.4 异常处理语句 56
习题 57

第3章 类和结构 59
3.1 自定义类(class)和结构(struct) 59
3.1.1 类的定义和成员组织 59
3.1.2 访问修饰符 60
3.1.3 静态成员和实例成员 62
3.1.4 构造函数 62
3.1.5 字段和局部变量 64
3.1.6 结构的定义和成员组织 65
3.2 属性和方法 67
3.2.1 属性(Property) 67
3.2.2 方法 68
3.3 类的继承与多态性 72
3.3.1 封装 72
3.3.2 继承 73
3.3.3 多态(new、virtual、override) 77
3.4 常用结构和类的用法 80
3.4.1 Math类 80
3.4.2 DateTime结构和TimeSpan结构 81
3.4.3 秒表、计时和随机数(Stopwatch、Timer、Random) 83
习题 85

第4章 接口、委托与事件 86
4.1 接口 86
4.1.1 接口的声明和实现 86
4.1.2 显式方式实现接口 88
4.1.3 利用接口实现多继承 89
4.2 委托 90
4.2.1 定义委托类型 91
4.2.2 通过委托调用方法 91
4.3 事件 93
4.3.1 事件的声明和引发 93
4.3.2 具有标准签名的事件 94
习题 95

第5章 泛型与LINQ 96
5.1 C#的类型扩展 96
5.1.1 匿名类型和隐式类型的局部变量 96
5.1.2 对象初始化和集合初始化 96
5.2 泛型和泛型集合 100
5.2.1 列表和排序列表 100
5.2.2 字典和排序字典 102
5.3 LINQ查询表达式 104
5.3.1 延迟执行和立即执行 104
5.3.2 from子句 105
5.3.3 where子句 106
5.3.4 orderby子句 107
5.3.5 group子句 108
5.3.6 select子句 109
5.3.7 查询多个对象 109
习题 111

第6章 目录与文件操作 112
6.1 目录和文件管理 112
6.1.1 Environment类和DriveInfo类 112
6.1.2 Path类 114
6.1.3 目录管理 114
6.1.4 文件管理 116
6.2 文件的读写 117
6.2.1 文件编码 117
6.2.2 文本文件的读写 118
6.2.3 StreamReader类和Stream-Writer类 119
习题 120

第 2篇 WPF应用程序

第7章 WPF应用程序入门 122
7.1 WPF应用程序和XAML标记 122
7.1.1 WPF应用程序的关闭模式及Shutdown方法 122
7.1.2 XAML命名空间和x:前缀编程构造 125
7.1.3 XAML基本语法 126
7.2 窗口和对话框 129
7.2.1 WPF窗口 129
7.2.2 在主窗口显示前先显示登录窗口或者欢迎窗口 130
7.2.3 对话框 133
7.2.4 WPF页和页面导航 134
7.3 颜色和形状 134
7.3.1 Brushe类和Colors类 134
7.3.2 Color结构 135
7.3.3 形状 135
7.4 画笔(Brush) 138
7.4.1 画笔分类 138
7.4.2 利用WPF设计器实现画笔变换 140
7.5 属性和事件 141
7.5.1 依赖项属性和附加属性 141
7.5.2 事件 142
习题 148

第8章 WPF控件 149
8.1 控件模型和内容模型 149
8.1.1 WPF控件模型 149
8.1.2 WPF内容模型 155
8.2 常用布局控件 157
8.2.1 WPF的布局分类 157
8.2.2 网格(Grid) 157
8.2.3 堆叠面板(StackPanel) 158
8.2.4 画布(Canvas) 159
8.2.5 边框(Border) 160
8.2.6 停靠面板(DockPanel) 160
8.3 常用基本控件 161
8.3.1 按钮(Button、RepeatButton) 161
8.3.2 文本块(TextBlock)和标签(Label) 162
8.3.3 文本框(TextBox、PasswordBox、RichTextBox) 163
8.3.4 单选按钮(RadioButton) 165
8.3.5 复选框(CheckBox) 167
8.3.6 列表框(ListBox)和下拉框(ComboBox) 168
8.4 菜单、工具条和状态条 171
8.4.1 菜单(Menu)和快捷菜单(ContextMenu) 171
8.4.2 工具条(ToolBar、ToolBarTray)和状态条(StatusBar) 173
8.5 图像(Image) 177
习题 178

第9章 资源与样式控制 179
9.1 XAML资源和样式控制 179
9.1.1 XAML资源 179
9.1.2 Style元素 181
9.1.3 在Style元素中设置属性和事件 182
9.1.4 样式的级联控制 183
9.1.5 使用C#代码定义和引用样式 188
9.2 在Style元素中使用模板和触发器 190
9.2.1 模板 190
9.2.2 触发器 192
习题 194

第 10章 动画与多媒体 195
10.1 WPF动画基础 195
10.1.1 WPF动画的分类 195
10.1.2 Storyboard和Timeline 196
10.2 基本动画(From/To/By) 203
10.2.1 基本动画类型 203
10.2.2 用Storyboard实现基本动画 204
10.3 关键帧动画 206
10.3.1 关键帧动画类型 206
10.3.2 利用Blend for VS2012制作关键帧动画 207
10.4 路径动画 209
10.4.1 使用PathGeometry绘制路径 209
10.4.2 路径动画类型 211
10.4.3 利用Blend for VS2012制作路径动画 213
10.5 语音、音频和视频 216
10.5.1 语音 216
10.5.2 音频和视频(MediaElement) 218
习题 221

第 11章 数据绑定与数据验证 222
11.1 数据绑定 222
11.1.1 数据绑定基本概念 222
11.1.2 简单数据绑定 226
11.1.3 数据模板化 235
11.1.4 通过数据模板和视图绑定到集合 239
11.2 数据验证 241
11.2.1 数据验证的基本概念 241
11.2.2 利用验证规则和绑定模型实现验证 243
习题 250

第 12章 数据库与实体数据模型 251
12.1 创建数据库和表 251
12.1.1 ADO.NET数据访问技术 251
12.1.2 SQL Server 2012简介 252
12.1.3 创建LocalDB数据库 253
12.2 利用实体框架创建实体数据模型 256
12.2.1 实体框架基本概念 256
12.2.2 实体框架开发模式 256
12.2.3 从数据库创建实体数据模型 257
12.3 使用LINQ to Entities访问实体对象 258
12.3.1 创建实体框架上下文(DbContext)实例 258
12.3.2 加载相关对象 260
12.3.3 查询数据 261
12.3.4 修改数据 263
12.3.5 添加或删除数据 265
12.4 DataGrid控件 267
12.4.1 绑定各种类型的数据 267
12.4.2 标题和行列控制 272
习题 275

第 13章 二维图形图像处理 276
13.1 图形图像处理基础 276
13.1.1 与二维图形图像处理相关的类 276
13.1.2 创建本章例子的主程序 277
13.2 二维图形处理 278
13.2.1 二维几何图形和路径标记语法 278
13.2.2 绘制基本图形 281
13.2.3 将格式化文本转换为图形 288
13.3 图像处理 290
13.3.1 图像处理常用类 290
13.3.2 图像的编码和解码 291
13.4 利用画笔绘制图形图像 295
13.4.1 TileBrush类 296
13.4.2 图像画笔(ImageBrush) 299
习题 300

第 14章 三维图形和三维呈现 301
14.1 WPF三维设计基本知识 301
14.1.1 Viewport3D控件 301
14.1.2 照相机(Camera) 304
14.1.3 三维几何模型(Geometry-Model3D) 306
14.1.4 光照类型 306
14.1.5 材料(Meterial) 307
14.2 在窗口或页面中呈现三维场景 310
14.2.1 利用相机变换制作3D场景观察器 310
14.2.2 动态显示相机的属性 310
14.2.3 三维网格几何(Mesh-Geometry3D) 312
14.3 三维建模和自定义三维模型类 316
14.3.1 利用模型编辑器创建和编辑三维模型 316
14.3.2 创建自定义三维模型类 319
14.3.3 利用三维模型库简化场景构建 321
14.4 对模型进行变换处理 324
14.4.1 三维变换处理基础 324
14.4.2 将三维变换封装到模型库中 326
习题 328

附录A 上机练习 329
A.1 上机练习要求 329
A.2 第 1章和第 2章上机练习 330
A.2.1 密码输入和显示练习(WinForm) 330
A.2.2 简单计算器设计练习(WinForm) 330
A.2.3 字符提取和整数整除练习(Console) 331
A.2.4 数组排序和计算练习(Console) 331
A.3 第3章和第4章上机练习 331
A.3.1 类及其属性和方法的实现练习(WinForm) 331
A.3.2 定时器和随机数练习(WinForm) 332
A.4 第5章和第6章上机练习 332
A.4.1 泛型和LINQ练习(WinForm) 332
A.4.2 文本文件读写练习(WinForm) 333
A.5 第7章和第8章上机练习 333
A.5.1 用户登录练习(WPF) 333
A.5.2 控件基本功能练习(WPF) 334
A.5.3 数学测验过关小游戏(WPF) 334
A.6 第9章和第 10章上机练习 335
A.6.1 样式定义和应用练习 335
A.6.2 垂直柱状图动画练习(WPF) 335
A.7 第 11章和第 12章上机练习 335
A.7.1 数据验证练习(WPF) 335
A.7.2 数据库设计练习(WPF) 336

附录B 综合实验 337
B.1 系统功能要求 337
B.2 成果提交 338

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

马骏,教授,硕士生导师,现任河南大学计算机与信息工程学院教学副院长。1986年毕业于天津大学计算机系,历任河南大学计算机系教研室主任、河南大学计算机与信息工程学院系主任、副院长。自2005年以来,主持和参与国家重大科技专项项目3项、省级科研项目5项,主编21世纪高等学校计算机精品系列规划教材4部,21世纪计算机应用技术系列规划教材5部。 其中《C#程序设计及应用教程》2012年被评为国家级“十二五“规划教材。

推荐用户

同系列书

购买本书用户

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部