图书简介:
目 录
第1章 C#语言开发环境 1
1.1 C#语言概述 1
1.1.1 C#语言的特点 1
1.1.2 C#语言与.NET的关系 3
1.2 安装Microsoft Visual Studio 3
1.3 Microsoft Visual Studio集成开发环境 6
1.3.1 Microsoft Visual Studio主窗口 6
1.3.2 代码编辑器与Windows窗体设计器 7
1.3.3 解决方案资源管理器和项目设计器 8
1.3.4 编译器、调试器和错误列表窗口 8
1.3.5 工具箱 9
1.3.6 属性窗口 10
1.4 Visual C#项目 11
1.4.1 创建新项目 11
1.4.2 项目中的内容 12
1.4.3 修改项目属性 13
1.4.4 生成和调试 13
1.5 C#程序设计过程 14
1.5.1 新建项目 14
1.5.2 定义用户界面 14
1.5.3 设置属性 15
1.5.4 添加事件 16
1.5.5 运行项目 16
1.5.6 保存文件和关闭项目 16
1.5.7 打开项目 17
1.6 Microsoft Visual Studio的帮助 19
1.7 实验:在Microsoft Visual Studio环境中编写C#程序 21
习题1 22
第2章 C#语言基础 23
2.1 C#程序的基本结构 23
2.1.1 C#程序的组成 23
2.1.2 保留字和标准指令符 25
2.1.3 标识符 25
2.1.4 注释 26
2.1.5 控制台程序中的标准输入和输出 27
2.2 数据类型 29
2.2.1 值类型 29
2.2.2 引用类型 34
2.2.3 类型转换 38
2.3 常量和变量的定义 41
2.3.1 常量 41
2.3.2 变量 42
2.4 运算符和表达式 43
2.4.1 运算符 43
2.4.2 表达式 45
2.5 语句 45
2.5.1 赋值语句 45
2.5.2 复合语句 46
2.5.3 条件语句 46
2.5.4 循环语句 49
2.5.5 跳转语句 52
2.6 异常处理语句 54
2.6.1 try-catch语句 54
2.6.2 try-finally语句 55
2.6.3 try-catch-finally语句 56
2.6.4 throw语句 56
2.7 实验:编写C#应用程序 56
习题2 58
第3章 面向对象程序设计 59
3.1 面向对象程序设计概念 59
3.1.1 结构化程序设计方法 59
3.1.2 面向对象的程序设计方法 59
3.1.3 面向对象程序设计的基本概念 61
3.2 类 62
3.2.1 类的定义 62
3.2.2 保护方式 62
3.2.3 类实例化 62
3.2.4 类的成员 64
3.3 方法 65
3.3.1 方法声明 65
3.3.2 方法参数 66
3.3.3 静态方法 69
3.3.4 构造函数 69
3.3.5 析构函数 71
*3.3.6 方法重载 72
3.4 继承和多态 73
3.4.1 继承 73
3.4.2 覆盖 75
*3.4.3 抽象类 76
*3.4.4 多态 77
3.5 域和属性 79
3.5.1 域 79
3.5.2 属性 81
3.6 名字空间 83
3.6.1 编译单元 83
3.6.2 名字空间声明 84
3.6.3 名字空间成员 84
3.6.4 using指令 85
3.7 实验:C#面向对象编程 90
习题3 93
第4章 窗体与控件 94
4.1 C#窗体 94
4.1.1 窗体与窗口 94
4.1.2 窗体属性 94
4.1.3 窗体方法 96
4.1.4 窗体事件 96
4.2 窗体设计 97
4.2.1 新建窗体 97
4.2.2 设置窗体属性 98
4.2.3 添加控件 98
4.2.4 编辑控件 99
4.2.5 设置控件属性 101
4.2.6 Tab键顺序 101
4.2.7 保存文件 101
4.2.8 运行程序 102
4.3 文本型控件 102
4.3.1 Label控件 102
4.3.2 LinkLabel控件 103
4.4 按钮型控件 103
4.4.1 Button控件 103
4.4.2 RadioButton控件 104
4.4.3 CheckBox控件 104
4.4.4 按钮型控件例程 105
4.5 编辑型控件 107
4.5.1 TextBox控件 107
4.5.2 MaskedTextBox控件 108
4.5.3 NumericUpDown控件 109
4.5.4 RichTextBox控件 110
4.5.5 编辑型控件例程 112
4.6 列表框型控件 114
4.6.1 ListBox控件 114
4.6.2 CheckedListBox控件 115
4.6.3 ComboBox控件 116
4.6.4 列表框型控件例程 117
4.7 滑块型控件 119
4.7.1 HScrollBar控件和VscrollBar控件 119
4.7.2 TrackBar控件 120
4.7.3 滑块型控件实例 120
4.8 容器型控件 122
4.8.1 GroupBox控件 122
4.8.2 Panel控件 122
4.8.3 TabControl控件 123
4.9 运行时改变窗体 123
4.9.1 运行时设置属性 124
4.9.2 运行时创建控件 126
4.10 实验:设计Form类窗体程序 126
习题4 130
第5章 界面设计 131
5.1 菜单设计简介 131
5.1.1 菜单结构 131
5.1.2 菜单项的作用 132
5.1.3 菜单设计器 132
5.2 主菜单设计 132
5.2.1 添加MenuStrip组件 133
5.2.2 添加菜单项 133
5.2.3 菜单项分组 134
5.2.4 菜单项热键 134
5.2.5 调整菜单项 134
5.2.6 创建级联菜单 134
5.2.7 菜单项响应 135
5.2.8 图形菜单 137
5.3 运行时设置菜单 138
5.3.1 菜单项灰显 138
5.3.2 隐藏菜单项 138
5.3.3 改变菜单项文本 139
5.3.4 菜单项复选标记 139
5.3.5 创建动态菜单 140
5.4 快捷菜单设计 142
5.4.1 快捷菜单的设计 142
5.4.2 快捷菜单的响应 143
5.5 工具栏设计 143
5.5.1 添加工具栏 143
5.5.2 添加工具栏成员 144
5.5.3 添加事件响应 144
5.5.4 动态设置成员属性 144
5.5.5 动态加载工具栏成员 145
5.6 状态栏设计 147
5.6.1 添加状态栏 147
5.6.2 添加状态标签 147
5.6.3 显示提示信息 147
5.6.4 显示动态信息 149
5.7 实验:设计窗体菜单、工具栏、状态栏 150
习题5 153
第6章 对话框、窗体调用 154
6.1 对话框调用 154
6.1.1 “打开”和“保存”对话框组件 154
6.1.2 “字体”和“颜色”对话框组件 158
6.1.3 “打印”、“页面设置”和“打印预览”对话框组件 160
6.2 窗体调用 166
6.2.1 窗体间调用 166
6.2.2 消息框调用 171
6.3 MDI程序 172
6.3.1 MDI窗体设计 172
6.3.2 子窗体排列 174
6.3.3 MDI的菜单设计 175
6.4 实验:对话框的设计和使用 177
习题6 179
第7章 图形、图像应用 180
7.1 GDI+绘图基础 180
7.1.1 GDI+概述 180
7.1.2 Graphics类 180
7.1.3 常用画图对象 182
7.1.4 画刷和画刷类型 187
7.2 C#图像处理基础 193
7.2.1 C#图像处理概述 193
7.2.2 图像的输入和保存 194
7.2.3 彩色图像处理 197
7.3 实验:C#图形编程 205
习题7 208
第8章 数据库编程 209
8.1 数据库系统概述 209
8.1.1 数据库管理系统 209
8.1.2 关系数据库 210
8.1.3 数据库应用程序 210
8.1.4 ADO.NET概述 210
8.1.5 创建数据库和表 212
8.2 数据库连接 215
8.2.1 Connection对象的常用属性和方法 215
8.2.2 Connection对象的连接字符串 216
8.3 数据库命令 218
8.3.1 Command对象的常用属性和方法 219
8.3.2 SQL语句简介 220
8.3.3 执行SQL命令 222
8.3.4 SQL参数类DbParameter 223
8.3.5 控件实现数据交互 225
8.4 DbDataReader类和DataSet类 227
8.4.1 数据读取器DbDataReader类 227
8.4.2 数据集DataSet类 229
8.4.3 数据表、数据列和数据行 230
8.5 数据适配器 232
8.5.1 DbDataAdapter类概述 232
8.5.2 读取数据库 232
8.5.3 命令生成类DbCommandBuilder 234
8.6 显示数据 236
8.6.1 数据表格控件DataGridView 236
8.6.2 控制DataGridView控件的外观和行为 237
8.7 数据集设计器 239
8.7.1 添加数据集 239
8.7.2 添加查询 240
8.8 实验:数据库的设计和应用 242
习题8 250
第9章 多线程编程 251
9.1 多线程概述 251
9.1.1 多线程简介 251
9.1.2 多线程用处 252
9.1.3 多线程特点 252
9.2 线程的创建和使用 253
9.2.1 线程创建 253
9.2.2 线程使用 254
9.2.3 线程管理 257
9.2.4 线程池 261
9.3 线程的同步 263
9.3.1 lock语句和线程安全 264
9.3.2 Monitor类 265
9.3.3 Interlocked类 267
9.3.4 Mutex类 268
9.3.5 Semaphore类 269
9.4 实验 271
习题9 275
第10章 文件操作 276
10.1 C#文件处理和管理 276
10.2 C#文件操作 277
10.2.1 File类 277
10.2.2 FileInfo类 281
10.2.3 File类和FileInfo类区别 284
10.3 C#文件夹操作 285
10.3.1 文件路径 285
10.3.2 Directory类 285
10.3.3 DirectoryInfo类 286
10.3.4 Directory和DirectoryInfo区别 289
10.4 文件流操作 289
10.4.1 C#流的概念 289
10.4.2 文件流应用 290
10.4.3 文本文件的读/写 295
10.4.4 二进制文件的读/写 299
10.5 实验 302
习题10 307
参考文献 308
展开
前言
C#是一种安全的、稳定的、简单的、高效的、由C和C++语言衍生出来的面向对象的编程语言。它在继承C和C++语言强大功能的同时,去掉了一些复杂特性。C#语言综合了Visual Basic语言的简单的可视化操作和C++语言的高运行效率,借鉴了Delphi语言与COM直接集成的特点,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
C#还深受其他语言的影响,包括Java和Delphi语言,其功能的健全毫不逊色于其他面向对象语言,非常适合初学者学习程序设计。
C#博采众家之长,同时克服了它们各自的缺点。Windows下的开发工具众多,而C#开发环境是目前面向对象和控件开发性能最好的工具之一。它使用Windows图形用户界面的许多先进特性和设计思想,采用可重复利用的、完整的、面向对象的程序设计语言。
本书采用Microsoft Visual Studio 2010体系和环境,对使用C#语言进行编程提供基础性的指导和参考。读者使用本书不需要预先具有任何编程经验,但如果对C、C++、Java或Delphi等语言有所了解,那么将会对本书的学习非常有益。本书逐步将C#技术介绍给读者,从入门到提高,同时对C#的面向对象和可视化组件进行了说明,读者将学会如何为各种应用程序创建切实可行又简洁漂亮的用户界面。
“边学边做”是学习编程语言的最有效方法,希望读者在阅读本书的过程中能够上机实践。每学完一个例子,尝试着改变一些,或者添加一些东西,或者修改一些代码,将有助于读者体验进步和成功的乐趣。本书配有电子课件,可免费提供给教师进行多媒体教学和读者自学时使用。
凡章节、习题的标题中有“*”标记的,表明有一定难度,读者可选择学习。
本书由张世明编著,曹晓夏和翁雯参与了部分章节的编写,在撰写过程中得到了同行专业人士的指点和帮助,在此表示感谢。
如果读者在本书中发现了错误或有疑问,可以给作者发电子邮件(vcline@sohu.com),或者联系本书的责任编辑冉哲(ran@phei.com.cn)。
展开