普通高等教育“十一五”国家级规划教材——高等学校计算机系列

C#应用程序设计教程

分享 推荐 0 收藏 0 阅读 3.2K
耿肇英 , 耿燚 (编著) 978-7-115-16335-6

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

(1)在.Net架构中,Windows和ASP.Ne应用程序的设计方法十分类似。在这种情况下,把Windows和ASP.Net应用程序的设计作为一门课程开设是合适的。本书前半部分讲述Windows应用程序设计方法,后半部分讲述ASP.Net和Web服务的设计方法。
(2)本书采用实例教学法
¥32.00 ¥27.20 (8.5 折)
立即购买 申请样书
教学资源仅供教师教学使用,转载或另作他用版权方有权追究法律责任。

内容摘要

  本书介绍C#应用程序设计技术,内容包括:C#语言基础、Windows和ASP.NET应用程序开发、2D和3D图形图像编程、文件读写和管理、多线程应用、ADO.NET数据库应用程序设计、XML标记语言、Web服务等。本书使用微软公司免费的速成版集成开发环境,它们包括了正式版的大部分功能?浅J屎辖萄А1臼樗欣釉?NET FrameWork2.0下调试通过。
  本书可作为大学本专科计算机导论和C语言的后续课程“面向对象Windows程序设计”的教材,或作为学习使用C#语言开发Windows和ASP.NET应用程序培训班教材,也适合使用C#语言开发项目的程序员参考。

目录

第 1章 C#语言基础 1
1.1 C#语言特点 1
1.2 编写控制台应用程序 2
1.3 类的基本概念 4
1.3.1 类的基本概念 4
1.3.2 类成员的存取控制 4
1.3.3 类的对象 5
1.3.4 类的构造函数、构造函数重载和析构函数 5
1.3.5 使用Person类的完整的例子 6
1.4 C#的数据类型 7
1.4.1 值类型和引用类型的区别 7
1.4.2 值类型变量分类 8
1.4.3 结构类型 8
1.4.4 简单类型 8
1.4.5 枚举类型 9
1.4.6 值类型的初值和默认构造函数 10
1.4.7 可空类型 10
1.4.8 引用类型分类 10
1.4.9 object类 11
1.4.10 数组类 11
1.4.11 字符串类(string类) 12
1.4.12 类型转换 13
1.4.13 泛型 15
1.5 运算符 16
1.5.1 运算符分类 16
1.5.2 溢出检查操作符checked和unchecked 16
1.5.3 new操作符 17
1.6 程序控制语句 17
1.6.1 C#和C语言语句的不同点 17
1.6.2 foreach语句 18
1.6.3 异常语句 19
1.7 类的继承 20
1.7.1 派生类的声明格式 20
1.7.2 隐藏基类方法 21
1.7.3 base关键字 21
1.7.4 C#语言类继承特点 22
1.8 类的成员 22
1.8.1 类的成员类型 22
1.8.2 类成员访问修饰符 22
1.9 类的字段和属性 23
1.9.1 静态字段、实例字段、常量和只读字段 23
1.9.2 属性 24
1.10 类的方法 25
1.10.1 方法的声明 25
1.10.2 方法中参数的传递 25
1.10.3 静态方法和实例方法 28
1.10.4 方法的重载 29
1.10.5 操作符重载 29
1.10.6 this关键字 30
1.11 类的多态性 31
1.12 抽象类和抽象方法 33
1.13 密封类和密封方法 34
1.14 静态类和静态类成员 34
1.15 C#2.0中的分部类 35
1.16 使自定义类支持foreach语句 35
1.17 接口 35
1.17.1 接口声明 36
1.17.2 接口的继承 36
1.17.3 类对接口的实现 36
1.18 代表类型 38
1.19 事件 39
1.19.1 事件驱动 39
1.19.2 事件的声明 39
1.19.3 事件的预订和撤销 40
1.20 索引指示器 41
1.21 命名空间 41
1.21.1 命名空间的声明 42
1.21.2 命名空间使用 42
习题一 43

第 2章 Windows编程的基础知识 44
2.1 Windows编程接口和类库 44
2.2 Windows应用程序的基本结构 45
2.2.1 **简单的Windows应用程序 45
2.2.2 用VS2005创建Windows应用程序 47
2.2.3 方案(Solution)和项目(Project) 48
习题二 49

第3章 常用控件和类的使用 50
3.1 控件通用属性 50
3.2 Form类 51
3.3 标签(Label)控件 51
3.4 按钮(Button)控件 52
3.5 事件处理函数的参数 53
3.6 文本框(TextBox)控件 53
3.7 Convert类 55
3.8 RadioButton和GroupBox控件 55
3.9 Font类 56
3.10 复选框(CheckBox)控件 56
3.11 列表框(ListBox)控件 58
3.12 下拉列表组合框(ComboBox)控件 59
3.13 ToolTip控件 60
3.14 超级链接(LinkLable)控件 60
3.15 定时(Timer)组件 61
3.16 DateTime类 62
3.17 菜单 62
3.18 工具条 64
3.19 状态栏控件 65
3.20 鼠标事件和Panel控件 66
3.21 快捷菜单 67
3.22 综合例子:计算器 68
3.23 类库、组件和控件 71
习题三 76

第4章 文本编辑器的实现 78
4.1 RichTextBox控件 78
4.2 剪贴板功能 79
4.3 存取文件 80
4.3.1 OpenFileDialog和SaveFileDialog控件 80
4.3.2 存取文件功能的实现 81
4.4 修改字体 82
4.4.1 FontDialog控件 83
4.4.2 修改字体实现方法 83
4.5 About对话框 83
4.6 文本编辑器查找替换功能 84
4.6.1 模式对话框和非模式对话框 85
4.6.2 查找替换功能的实现 85
4.7 提示用户保存已被修改的文件 87
4.7.1 MessageBox类 87
4.7.2 提示保存已被修改的文件 88
4.8 打印和打印预览 90
4.8.1 PrintDocument类 90
4.8.2 页面设置对话框(PageSetupDialog) 92
4.8.3 打印预览 93
4.8.4 用打印对话框(PrintDialog)实现打印 93
4.9 编写多文档界面应用程序 94
4.9.1 多文档文本编辑器 94
4.9.2 多选项卡页的文本编辑器 96
习题四 98

第5章 图形图像编程 100
5.1 GDI+(图形设备环境接口) 100
5.2 Graphics类 100
5.2.1 使用Graphics类绘图的基本步骤 101
5.2.2 窗体的Paint事件 101
5.3 GDI+中常用的结构 102
5.4 画笔Pen类 103
5.5 创建画刷 104
5.5.1 单色画刷(SolidBrush) 104
5.5.2 阴影画刷(HatchBrush) 104
5.5.3 纹理(图像)画刷(TextureBrush) 105
5.5.4 颜色渐变画刷(LinearGradientBrush) 106
5.5.5 画刷PathGradientBrush和GraphicsPath类 107
5.6 基本图形的绘制和填充 108
5.6.1 用DrawLine方法绘制线段 108
5.6.2 泛型List类 111
5.6.3 DrawEllipse方法画椭圆(圆)及键盘事件 111
5.6.4 DrawRectangle方法画矩形 113
5.6.5 DrawArc方法绘制圆弧 113
5.6.6 DrawPie方法绘制饼图 113
5.6.7 DrawPolygon方法绘制多边形 114
5.6.8 DrawPath方法 114
5.6.9 DrawString方法写字符串 114
5.6.10 DrawImage和DrawIcon方法 115
5.6.11 FillEllipse方法填充内切椭圆(圆) 116
5.6.12 FillRectangle方法填充矩形 116
5.6.13 FillPie方法填充饼图 116
5.6.14 FillRegion方法和Region类 117
5.7 Matrix类和图形的平移、变形和旋转 118
5.7.1 Matrix类 118
5.7.2 图形的平移、变形和旋转 119
5.7.3 仿射矩阵 120
5.8 图形框PictureBox控件 121
5.9 Bitmap类 122
5.9.1 Bitmap类支持的图像类型 122
5.9.2 Bitmap类的方法 122
5.9.3 SetPixel方法画点 122
5.9.4 在PictureBox中拖动鼠标画曲线 123
5.9.5 存取位图文件 124
5.9.6 用拖动鼠标方法画椭圆或圆 125
5.10 图像剪贴板功能 126
5.10.1 剪切、复制区域的选定 126
5.10.2 剪贴板复制功能的实现 127
5.10.3 剪贴板剪切功能的实现 127
5.10.4 剪贴板粘贴功能的实现 128
5.11 图像的处理 129
5.11.1 降低图像的分辨率 129
5.11.2 彩色图像变换为灰度图像 130
5.11.3 旋转和翻转图像 131
5.11.4 调整图像的颜色、亮度和对比度 132
5.11.5 音频和视频的播放 133
5.12 DirectX程序设计入门 134
5.12.1 DirectX SDK 9.0C安装及类库介绍 134
5.12.2 实现视频播放 135
5.12.3 3D图形的数学基础 137
5.12.4 图形卡和GPU 137
5.12.5 Device类 138
5.12.6 Mesh类 140
5.12.7 灯光和材质 142
5.12.8 变换和Matrix结构 142
5.12.9 改变观察点和旋转茶壶 145
5.12.10 增加多个茶壶 146
5.12.11 纹理 146
5.12.12 用Mesh显示.X文件中的3D图形 148
习题五 150

第6章 文件和流 152
6.1 用流读写文件 152
6.1.1 FileStream类读写字节 152
6.1.2 BinaryReader、BinaryWriter类读写基本数据类型 154
6.1.3 StreamReader和StreamWriter类读写字符串 155
6.1.4 序列化 156
6.1.5 Stream类的其他派生类 158
6.2 File类和FileInfo类 159
6.2.1 File类常用的方法 159
6.2.2 判断文件是否存在 160
6.2.3 删除文件 160
6.2.4 复制文件 160
6.2.5 移动文件 161
6.2.6 设置文件属性 162
6.2.7 得到文件的属性 162
6.3 Directory类和DirectoryInfo类 163
6.3.1 Directory类常用的方法 163
6.3.2 判断目录是否存在 163
6.3.3 创建目录 164
6.3.4 删除目录 164
6.3.5 移动目录 165
6.3.6 获取当前目录下所有子目录 165
6.3.7 获取当前目录下的所有文件 166
6.3.8 设置目录属性 167
6.4 例子:查找文件 167
6.4.1 ListView和FolderBrowserDialog控件 167
6.4.2 在指定文件夹中查找文件 168
6.5 例子:鼠标拖放打开文件 169
6.6 例子:拆分和合并文件 171
习题六 172

第7章 多线程程序设计 173
7.1 创建线程 173
7.1.1 线程(Thread)类的属性和方法 173
7.1.2 创建线程 174
7.1.3 进度条(ProgressBar)控件 175
7.1.4 用线程控制进度条 175
7.1.5 BackgroundWorker组件 177
7.2 多个线程互斥 179
7.2.1 多个线程同时修改共享数据可能发生错误 179
7.2.2 用Lock语句实现互斥 180
7.2.3 用Mutex类实现互斥 181
7.2.4 用Monitor类实现互斥 182
7.3 生产者线程和消费者线程的同步 182
7.3.1 生产者线程和消费者线程不同步可能发生错误 182
7.3.2 生产者线程和消费者线程同步的实现 183
习题七 184

第8章 数据库与ADO.NET 185
8.1 设计数据库应用程序的基本步骤 185
8.2 用SQL Server Express创建数据库 186
8.3 结构化查询语言(SQL) 187
8.4 连接数据库(SqlConnection和OleDbConnection类) 188
8.5 OleDbCommand和SQLCommand类 189
8.6 OleDbAdapter和SqlDataAdapter类 190
8.7 DataSet类对象 190
8.7.1 使用DataSet类的必要性 190
8.7.2 使用DataSet类对象 191
8.7.3 为DataSet对象中的表指定主键、建立关系 192
8.8 数据绑定概念和BindingSource组件 192
8.9 DataGridView控件 193
8.10 BindingNavigator控件 196
8.11 建立主从关系表 197
8.12 OleDbDataReader和SqlDataReader类 198
8.13 存储过程 199
8.14 DataTable类 200
8.15 在SQL Server数据库中存储图像 201
习题八 202

第9章 ASP.NET编程基础知识 203
9.1 网络基础 203
9.1.1 局域网、广域网和Internet 203
9.1.2 TCP/IP和IP地址 203
9.1.3 域名和域名服务器 204
9.1.4 Web网站工作方式和宿主目录 204
9.1.5 URL、超级链接、主页和端口号 205
9.1.6 HTML、HTTP和网页 205
9.1.7 静态网页和动态网页 206
9.1.8 修改宿主目录及建立虚拟目录 206
9.2 HTML标记语言 208
9.2.1 HTML标记和网页文件结构 208
9.2.2 超级链接 210
9.2.3 网页中控件的概念 210
9.2.4 使用VS2005可视化创建网页 211
9.2.5 用表格进行页面布局 211
9.2.6 用层进行页面布局 212
9.2.7 CSS样式文件 213
9.2.8 母版页 214
9.3 ASP.NET技术基础 216
9.3.1 Web服务器控件 216
9.3.2 记事本编写动态网页 216
9.3.3 ASP.NET的事件处理 218
9.3.4 用VS 2005创建动态网页 218
9.3.5 Code Behind技术 219
9.3.6 发布网站 220
9.3.7 复制网站 221
习题九 222

第 10章 Web服务器控件 223
10.1 标准Web服务器控件 223
10.1.1 Label控件 223
10.1.2 TextBox控件 224
10.1.3 Button、LinkButton和ImageButton控件 224
10.1.4 CheckBox和CheckBoxList控件 225
10.1.5 RadioButton和RadioButtonList控件 226
10.1.6 Image控件 227
10.1.7 HyperLink控件 228
10.1.8 Table、TableCell和TableRow控件 228
10.1.9 DropDownList控件 229
10.1.10 ListBox控件 230
10.2 数据验证控件 230
10.2.1 数据验证概述 230
10.2.2 RequiredFieldValidator控件 231
10.2.3 ValidationSummary控件 232
10.2.4 自定义数据验证控件CustomValidator 233
10.2.5 CompareValidator控件 235
10.2.6 RangeValidator控件 235
10.2.7 RegularExpressionValidator控件 236
10.3 Web服务器控件数据绑定 239
10.3.1 绑定到其他控件属性 239
10.3.2 绑定到函数返回值 240
10.3.3 绑定到集合类对象 240
10.3.4 数据源控件 241
10.4 GridView控件 243
10.5 DetailsView控件 246
10.6 FormView控件 246
10.7 Repeater控件 247
10.7.1 Repeater控件概述 247
10.7.2 用Repeater控件显示数据库表 249
10.7.3 Repeater控件事件ItemCommand 250
10.8 DataList控件 251
10.8.1 DataList控件概述 251
10.8.2 使用VS2005编辑DataList 253
10.9 AdRotator控件 255
10.10 Calender控件 257
10.11 登录和注册控件 259
10.11.1 LoginView、Loginname和LoginStatus控件 259
10.11.2 Loging控件 260
10.11.3 使用网站配置工具增加注册用户 260
10.11.4 注册控件CreateUserWizard 262
10.11.5 访问规则和角色 263
10.12 VS2005实现留言板网站 264
10.13 导航控件 266
10.13.1 Web.sitemap站点地图文件 266
10.13.2 SiteMapPath控件 267
10.13.3 Menu控件 267
10.13.4 TreeView控件 267
习题十 268

第 11章 ASP.NET内建对象 270
11.1 Response和Request对象 270
11.2 文件的上传和下载 272
11.3 Cookie对象 273
11.3.1 Cookie对象的用法 273
11.3.2 用Cookie对象记录访问网站的次数 274
11.3.3 网上商店购物筐实现 275
11.4 Application对象 277
11.4.1 Application对象方法和事件 277
11.4.2 Global.asax文件 278
11.4.3 显示访问网站总人数的例子 278
11.5 Session对象 280
11.5.1 Session对象的属性、方法和事件 280
11.5.2 用Session对象实现网上商店购物筐 281
11.6 Server对象 282
11.6.1 Server对象属性和方法 282
11.6.2 使用Server.Transfer在网页之间传递数据 283
11.7 Cache对象 284
11.8 Web.config配置文件 285
习题十一 286

第 12章 可扩展标记语言 288
12.1 XML可扩展标记语言的基本概念 288
12.1.1 HTML及其缺点 288
12.1.2 SGML(标准通用标记语言) 288
12.1.3 XML(可扩展标记语言) 289
12.1.4 XML的文档格式 289
12.1.5 用DTD和XML Schema定义XML架构 290
12.1.6 较复杂的XML文档 291
12.2 XML文档显示 292
12.2.1 用XSL文件显示XML文档 292
12.2.2 使用XML控件显示XML文档 294
12.2.3 使用数据绑定方法显示XML文档 294
12.2.4 使用XmlDataSource 296
12.2.5 将XML文件转换为HTML文件 297
12.3 对XML文档的处理 297
12.3.1 使用XmlTextReader类读XML文件 297
12.3.2 使用XmlTextReader类读XML文档标记 299
12.3.3 使用XmlTextWriter类写XML文档 300
12.3.4 文档对象模型(DOM)使用 301
12.3.5 用XML Schema验证XML架构 304
12.4 数据库和XML 305
习题十二 306

第 13章 Web服务 308
13.1 Web服务的概念和用途 308
13.2 建立Web服务 309
13.2.1 用记事本建立Web服务 310
13.2.2 用VS 2005建立Web服务 312
13.2.3 服务描述语言(WSDL) 312
13.3 基于.NET的Web服务客户端程序 313
13.3.1 调用Web服务方法采用的协议 313
13.3.2 VS 2005建立Web服务客户端程序 313
13.3.3 WSDL程序 315
13.3.4 同步和异步Web服务 316
13.3.5 不同系统Web服务的互操作 316
13.4 使用Web服务的例子 316
13.4.1 .NET系统Web服务支持的数据类型 316
13.4.2 使用Web服务返回数据库表 316
13.4.3 用Web服务传送图形文件 317
习题十三 318

参考文献 319

读者评论

赶紧抢沙发哦!

我要评论

同系列书

  • 计算机常用算法与程序设计教程

    杨克昌

      本书遵循“内容实用,难易适当,面向设计,注重能力培养”的要求,讲述了穷举、回溯、分治、递归、递推、贪心算法...

    ¥28.00
  • 大学计算机基础实践教程

    甘勇 尚展垒 陈慧

      本书是根据教育部非计算机专业计算机基础课程教学指导分委员会提出的《关于进一步加强高校计算机基础教学的意见》...

    ¥19.80
  • 计算机网络

    周炎涛 胡均平

      本书在介绍必要的计算机网络与通信理论知识的基础上,兼顾工程应用技术,对计算机网络规划建设、管理服务和安全作...

    ¥29.80
  • 计算机操作系统

    刘循 朱敏 文艺

      操作系统是现代计算机系统中必不可少的重要系统软件,也是计算机专业的必修课程。本书深入浅出地对操作系统的基本...

    ¥34.00
  • 数据结构(C++版)

    杨秀金

      本书根据教育部高等学校计算机科学与技术教学指导委员会关于“数据结构”课程的指导性大纲进行编写。书中系统地介...

    ¥32.00

相关图书

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