图书介绍
软件开发实战 C#开发实战PDF|Epub|txt|kindle电子书版本网盘下载
- 软件开发技术联盟编著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302318903
- 出版时间:2013
- 标注页数:676页
- 文件大小:210MB
- 文件页数:695页
- 主题词:C语言-程序设计
PDF下载
下载说明
软件开发实战 C#开发实战PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1篇 新手入门2
第1章 初探C#及其开发环境2
1.1了解.NET3
1.1.1.NET概述3
1.1.2.NET程序编译原理3
1.1.3.NET项目成功案例4
1.2 C#语言及其特点5
1.2.1 C#与.NET的关系5
1.2.2 C#语言的特点5
1.2.3 C#语言的发展趋势5
1.3安装与卸载Visual Studio 20105
1.3.1安装Visual Studio 2010系统必备条件6
1.3.2安装Visual Studio 20106
1.3.3卸载Visual Studio 20108
1.4熟悉Visual Studio 2010开发环境8
1.4.1创建控制台应用程序8
1.4.2创建Windows窗体应用程序9
1.4.3菜单栏10
1.4.4工具栏介绍10
1.4.5“工具箱”面板11
1.4.6“属性”面板11
1.4.7解决方案资源管理器11
1.4.8“错误列表”面板12
1.4.9“输出”面板12
1.5 C#编程常用帮助12
1.5.1安装Help Library管理器13
1.5.2使用Help Library管理器13
1.5.3常用的C#编程帮助网站14
1.6实战15
1.6.1如何开始运行程序15
1.6.2如何中断当前程序的运行15
1.7小结16
1.8学习成果检验16
第2章 认识C#代码结构17
2.1定制自己的开发环境18
2.1.1设置代码字体和颜色18
2.1.2设置显示代码行号18
2.1.3灵活使用自动隐藏功能19
2.2编写第一个C#程序19
2.3分析C#程序结构20
2.3.1命名空间介绍20
2.3.2类21
2.3.3 Main方法21
2.3.4标识符22
2.3.5关键字22
2.3.6编写C#语句22
2.3.7代码注释23
2.4实战24
2.4.1使用“记事本”编写C#程序并编译24
2.4.2如何快速找到程序出错位置24
2.4.3为程序设置版本和帮助信息25
2.4.4为项目添加已有窗体26
2.4.5动起来的Label控件26
2.5小结27
2.6学习成果检验27
第3章 C#程序设计基础28
3.1数据类型29
3.1.1值类型的使用29
3.1.2引用类型的使用31
3.2声明并使用变量32
3.2.1变量的声明及初始化32
3.2.2变量的作用域33
3.3声明并使用常量33
3.4数据类型转换34
3.4.1隐式类型转换34
3.4.2显式类型转换35
3.4.3装箱和拆箱36
3.5运算符的使用37
3.5.1算术运算符38
3.5.2赋值运算符39
3.5.3关系运算符40
3.5.4逻辑运算符42
3.5.5移位运算符44
3.5.6其他特殊运算符45
3.5.7运算符的优先级46
3.6实战47
3.6.1制作用户登录程序47
3.6.2判断一个数是否是素数48
3.6.3使用算术运算符开发简单计算器49
3.6.4使用“^”运算符对数字进行加密50
3.6.5巧用位移运算符获取汉字编码值51
3.6.6使用条件运算符判断指定年份是不是闰年51
3.7小结52
3.8学习成果检验52
第4章 选择结构控制53
4.1 C#程序设计算法54
4.2 if语句的使用56
4.2.1使用if…else语句实现条件选择56
4.2.2 if语句的嵌套使用58
4.3 switch语句的使用60
4.3.1使用switch语句实现多分支选择60
4.3.2 if…else语句与switch语句61
4.4实战63
4.4.1判断用户登录身份63
4.4.2递归算法的经典面试题64
4.4.3使用switch语句实现数字转换大写65
4.4.4使用流程控制语句报销业务花销66
4.4.5小明去学校和医院分别要走哪条路66
4.5小结67
4.6学习成果检验67
第5章 循环结构控制68
5.1 while和do…while语句的使用69
5.1.1使用while语句实现代码循环69
5.1.2使用do…while语句实现至少执行一次循环70
5.1.3 while和do…while语句的区别71
5.2 for和foreach语句的使用72
5.2.1使用for语句实现代码循环72
5.2.2使用foreach语句遍历数据集合73
5.3循环结构中的跳转语句74
5.3.1使用break语句跳出循环74
5.3.2使用continue语句继续程序的执行76
5.3.3使用goto语句实现程序跳转76
5.3.4使用return语句使程序返回78
5.4实战79
5.4.1鸡尾酒排序算法的实现79
5.4.2哥德巴赫猜想算法的实现80
5.4.3使用switch语句更改窗体颜色82
5.4.4使用goto语句在数组中搜索指定图书83
5.4.5制作一个数字猜猜看小游戏83
5.5小结85
5.6学习成果检验85
第6章 字符及字符串86
6.1字符操作87
6.1.1 Char类概述87
6.1.2使用Char类中的方法对字符进行操作87
6.1.3认识并使用转义字符88
6.2字符串的声明及初始化89
6.2.1 String类概述89
6.2.2声明字符串90
6.2.3初始化字符串90
6.3字符串操作90
6.3.1比较字符串90
6.3.2格式化字符串92
6.3.3截取字符串94
6.3.4分割字符串94
6.3.5插入和填充字符串95
6.3.6删除字符串97
6.3.7复制字符串97
6.3.8替换字符串99
6.4可变字符串类StringBuilder的使用100
6.4.1 StringBuilder类概述100
6.4.2创建StringBuilder对象100
6.4.3 StringBuilder类的使用101
6.4.4 StringBuilder类与String类的区别102
6.5实战102
6.5.1长字符串分段显示102
6.5.2字符串加密与解密103
6.5.3根据汉字获得其区位码104
6.5.4字母与ASCII码的转换105
6.5.5将汉字转换为拼音106
6.5.6批量替换某一类字符串106
6.5.7开发一个进制转换器106
6.6小结109
6.7学习成果检验109
第7章 数组、集合与哈希表110
7.1数组概述111
7.2一维数组的声明和使用111
7.2.1一维数组的声明111
7.2.2一维数组的使用112
7.3二维数组的声明和使用113
7.3.1二维数组的声明113
7.3.2二维数组的使用113
7.3.3动态数组的声明及使用114
7.4数组的基本操作115
7.4.1遍历数组中的元素115
7.4.2添加/删除数组元素115
7.4.3使用排序算法对数组进行排序116
7.4.4数组的合并与拆分118
7.5 ArrayList集合的使用120
7.5.1 ArrayList集合概述120
7.5.2添加ArrayList集合元素121
7.5.3删除ArrayList集合元素123
7.5.4遍历ArrayList集合124
7.5.5查找ArrayList集合元素125
7.6 Hashtable(哈希表)的使用126
7.6.1 Hashtable概述126
7.6.2添加Hashtable元素126
7.6.3删除Hashtable元素127
7.6.4遍历Hashtable元素128
7.6.5查找Hashtable元素128
7.7实战129
7.7.1使用数组解决约瑟夫环问题129
7.7.2希尔排序算法的实现130
7.7.3使用哈希表查找XML文件131
7.7.4操作便捷的简单电话簿132
7.7.5向班级集合中添加学生信息133
7.7.6设计一个简单客车售票记录程序134
7.8小结135
7.9学习成果检验135
第8章 面向对象程序设计136
8.1面向对象编程概述137
8.2属性的定义及使用137
8.2.1属性概述138
8.2.2属性的定义138
8.2.3属性的使用139
8.3方法的声明及使用140
8.3.1方法概述140
8.3.2方法修饰符140
8.3.3方法的声明141
8.3.4方法的分类142
8.3.5重载方法的实现142
8.4结构的定义及使用143
8.4.1结构概述143
8.4.2结构的定义144
8.4.3结构的使用144
8.5类与对象详解145
8.5.1类的概念145
8.5.2类的声明146
8.5.3构造函数和析构函数146
8.5.4对象的声明和实例化147
8.5.5类与对象的关系149
8.6面向对象特性之封装149
8.6.1封装概述149
8.6.2封装的实现150
8.7面向对象特性之继承151
8.7.1继承概述151
8.7.2继承的实现151
8.7.3单继承的使用153
8.7.4多重继承的使用154
8.8面向对象特性之多态156
8.8.1多态概述156
8.8.2多态的实现157
8.9实战159
8.9.1使用面向对象思想实现简单计算器159
8.9.2使用面向对象思想实现在字符串中查找数字160
8.9.3通过类的多态性确定人类的说话行为161
8.9.4存储不同类型的数据列表162
8.9.5去掉数组中的重复数字162
8.10小结163
8.11学习成果检验163
第9章 综合实验(一)——365桌面提醒器164
9.1 365桌面提醒器概述165
9.1.1提醒设置流程165
9.1.2计划录入流程165
9.1.3计划查询流程165
9.1.4计划统计流程166
9.1.5定时关机流程166
9.1.6程序预览167
9.2数据库设计168
9.3关键技术168
9.3.1通过修改注册表实现自动运行程序168
9.3.2使用多线程处理弹出“提示气泡”任务170
9.3.3使用扩展方法为系统类型添加新功能171
9.3.4应用初始化器创建集合或对象171
9.3.5使用ADO.NET对象提交数据172
9.4公共类设计172
9.4.1封装数据值和显示值的类172
9.4.2绑定和显示数据的类173
9.5提醒设置174
9.5.1提醒设置功能概述174
9.5.2“提醒设置”界面设计174
9.5.3打开“提醒设置”界面174
9.5.4保存提示设置175
9.6计划录入176
9.6.1计划录入功能概述176
9.6.2“计划录入”界面设计176
9.6.3打开“计划录入”界面177
9.6.4添加计划任务177
9.6.5保存计划任务178
9.6.6删除计划任务179
9.7计划查询180
9.7.1计划查询功能概述180
9.7.2“计划查询”界面设计180
9.7.3打开“计划查询”界面180
9.7.4查询计划信息181
9.7.5处理计划182
9.8计划统计183
9.8.1计划统计功能概述183
9.8.2“计划统计”界面设计183
9.8.3统计计划信息184
9.9小结184
9.10学习成果检验184
第2篇 进阶提高186
第10章 Windows窗体设计186
10.1 Form窗体基础187
10.1.1 Form窗体概述187
10.1.2添加和删除Form窗体187
10.1.3添加多窗体188
10.1.4设置窗体的属性189
10.1.5窗体的显示与隐藏191
10.1.6触发窗体事件191
10.2 MDI窗体设计192
10.2.1 MDI窗体概述192
10.2.2设置MDI窗体193
10.2.3排列MDI子窗体193
10.3继承窗体设计195
10.3.1继承窗体概述195
10.3.2创建继承窗体195
10.3.3在继承窗体中修改继承的控件属性197
10.4实战198
10.4.1设计一个系统登录窗体198
10.4.2制作启动欢迎界面198
10.4.3从上次关闭位置启动窗体199
10.4.4自定义“最大化”、“最小化”和“关闭”按钮200
10.4.5制作鼠标穿透窗体202
10.4.6窗体换肤程序202
10.5小结204
10.6学习成果检验204
第11章 Windows应用程序常用控件205
11.1控件概述206
11.1.1控件的分类及作用206
11.1.2控件命名规范207
11.2控件的相关操作207
11.2.1添加控件207
11.2.2对齐控件208
11.2.3锁定控件208
11.2.4删除控件208
11.3文本类控件208
11.3.1标签控件209
11.3.2按钮控件209
11.3.3文本框控件210
11.3.4有格式文本控件212
11.4选择类控件214
11.4.1下拉组合框控件215
11.4.2复选框控件216
11.4.3单选按钮控件217
11.4.4数值选择控件218
11.4.5列表控件219
11.5分组控件221
11.5.1容器控件222
11.5.2分组框控件222
11.5.3选项卡控件223
11.6实战225
11.6.1判断注册用户操作权限225
11.6.2使用ListBox实现点菜功能228
11.6.3只允许输入数字的TextBox控件230
11.6.4实现类似Word的项目编号功能230
11.6.5在RichTextBox控件中实现关键字描红231
11.6.6对ListBox控件中的数据进行排序231
11.7小结232
11.8学习成果检验232
第12章 Windows应用程序高级控件233
12.1存储图像控件(ImageList控件)234
12.1.1在ImageList控件中添加图像234
12.1.2在ImageList控件中移除图像234
12.2列表视图控件(ListView控件)235
12.2.1在ListView控件中添加/移除项236
12.2.2选择ListView控件中的项237
12.2.3为ListView控件中的项添加图标238
12.2.4在ListView控件中启用平铺视图238
12.2.5为ListView控件中的项分组239
12.3树控件(TreeView控件)241
12.3.1添加和删除树节点241
12.3.2获取树控件中选中的节点242
12.3.3为树控件中的节点设置图标243
12.4日期控件(DateTimePicker控件)244
12.4.1使用DateTimePicker控件显示时间244
12.4.2使用DateTimePicker控件以自定义格式显示日期244
12.4.3返回DateTimePicker控件中选择的日期245
12.5月历控件(MonthCalendar控件)246
12.5.1更改MonthCalendar控件的外观246
12.5.2在MonthCalendar控件中显示多个月份247
12.5.3在MonthCalendar控件中以粗体显示特定日期247
12.5.4在MonthCalendar控件中选择日期范围248
12.6其他高级控件249
12.6.1使用ErrorProvider控件验证文本框输入249
12.6.2使用HelpProvider控件调用帮助文件250
12.6.3使用Timer控件设置时间间隔251
12.6.4使用ProgressBar控件显示程序运行进度条252
12.7实战252
12.7.1设计一个电子万年历252
12.7.2制作一个闹钟计时器254
12.7.3在模式窗口中显示进度条257
12.7.4使用TreeView控件遍历磁盘目录259
12.7.5用树型列表动态显示菜单260
12.8小结261
12.9学习成果检验261
第13章 对话框、菜单、工具栏及状态栏控件262
13.1对话框控件263
13.1.1对话框概述263
13.1.2打开对话框控件263
13.1.3另存为对话框控件263
13.1.4浏览文件夹对话框控件264
13.1.5颜色对话框控件265
13.1.6字体对话框控件265
13.2菜单、工具栏和状态栏控件266
13.2.1菜单控件(MenuStrip控件)266
13.2.2工具栏控件(ToolStrip控件)266
13.2.3状态栏控件(StatusStrip控件)267
13.3实战268
13.3.1制作带历史信息的菜单268
13.3.2制作仿XP系统的任务栏菜单269
13.3.3具有提示功能的工具栏271
13.3.4级联菜单的动态合并271
13.3.5在状态栏中显示当前系统操作员272
13.4小结272
13.5学习成果检验272
第14章 综合实验(二)——QQ自动登录器模块273
14.1 QQ自动登录器概述274
14.1.1 QQ自动登录器流程274
14.1.2主窗体流程274
14.1.3添加QQ账号流程274
14.1.4路径设置流程275
14.1.5程序预览275
14.2数据库设计275
14.3关键技术276
14.3.1 QQ自动登录器的实现原理276
14.3.2使用MD5加密算法加密QQ密码276
14.3.3使用XML文件存储QQ账号信息277
14.3.4使用XmlElement类序列化QQ账号属性278
14.3.5通过XML文件读取和写入QQ账号信息279
14.3.6使用注册表存储信息281
14.4主窗体281
14.4.1主窗体功能概述281
14.4.2主窗体界面设计281
14.4.3初始化QQ列表282
14.4.4启动多个QQ账号283
14.4.5启动QQ程序284
14.4.6增加QQ账号信息285
14.4.7修改QQ账号信息285
14.4.8删除QQ账号286
14.4.9设置QQ账号为隐身286
14.5添加QQ账号287
14.5.1添加QQ账号功能概述287
14.5.2添加QQ账号界面设计287
14.5.3添加QQ账号287
14.6路径设置289
14.6.1路径设置功能概述289
14.6.2路径设置界面设计289
14.6.3显示原有路径设置289
14.6.4选择QQ程序路径290
14.6.5保存路径设置290
14.7小结291
14.8学习成果检验291
第3篇 中级开发294
第15章 数据库编程基础294
15.1数据库基础295
15.1.1数据库简介295
15.1.2安装SQL Server 2000数据库295
15.1.3安装SQL Server 2005数据库297
15.1.4安装SQL Server 2008数据库299
15.1.5数据库的创建及删除304
15.1.6数据表的创建及删除304
15.2 SQL语言基础306
15.2.1 SQL语言简介306
15.2.2简单SQL语句的应用306
15.3实战311
15.3.1使用INSERT SELECT语句批量插入数据311
15.3.2从一个表中向另一个表中复制行311
15.3.3统计某个值出现的次数312
15.3.4对多列的求和运算313
15.3.5通过CASE语句生成静态交叉表314
15.4小结314
15.5学习成果检验314
第16章 ADO.NET数据访问技术315
16.1 ADO.NET概述316
16.2使用Connection对象连接数据库316
16.2.1 Connection对象概述316
16.2.2连接数据库316
16.2.3关闭连接317
16.3使用Command对象执行SQL语句319
16.3.1 Command对象概述319
16.3.2设置数据源类型319
16.3.3执行SQL语句320
16.4使用DataReader对象读取数据322
16.4.1 DataReader对象概述322
16.4.2判断查询结果中是否有值323
16.4.3读取数据324
16.5数据适配器:DataAdapter对象324
16.5.1 DataAdapter对象概述324
16.5.2填充DataSet数据集325
16.5.3更新数据源325
16.6数据集:DataSet对象327
16.6.1 DataSet对象概述327
16.6.2合并DataSet内容327
16.6.3复制DataSet内容328
16.7实战329
16.7.1使用二进制存储用户头像329
16.7.2使用存储过程实现员工自动编号332
16.7.3使用交叉表统计商品销售信息333
16.7.4向SQL Server数据库中批量写入海量数据336
16.7.5使用断开式连接批量更新数据库中的数据337
16.7.6综合查询职工详细信息337
16.8小结340
16.9学习成果检验340
第17章 DataGridView数据控件341
17.1 DataGridView控件概述342
17.2在DataGridView控件中显示数据342
17.3获取DataGridView控件中的当前单元格343
17.4在DataGridView控件中修改数据344
17.5选中DataGridView控件中的行时显示不同颜色345
17.6禁止在DataGridView控件中添加和删除行347
17.7禁用DataGridView控件的自动排序功能347
17.8合并DataGridView控件中的单元格348
17.9实战350
17.9.1将DataGridView中的数据导出到Word350
17.9.2将DataGridView中的数据导出到Excel351
17.9.3在DataGridView控件中验证数据输入352
17.9.4在DataGridView控件中添加“合计”和“平均值”353
17.9.5通过DataGridView分页查看用户信息354
17.10小结356
17.11学习成果检验356
第18章 面向对象编程高级技术357
18.1接口的声明及实现358
18.1.1接口概述358
18.1.2接口的声明358
18.1.3接口的实现与继承359
18.1.4显式接口成员实现360
18.2抽象类的声明及使用362
18.2.1抽象类概述362
18.2.2抽象类的声明362
18.2.3抽象方法的声明362
18.2.4抽象类的使用363
18.2.5抽象类与接口364
18.3密封类的声明及使用364
18.3.1密封类概述364
18.3.2密封类的声明365
18.3.3密封方法的声明365
18.3.4密封类的使用366
18.4实战367
18.4.1使用多重继承实现教师和学生信息的输出367
18.4.2对用户信息进行密封369
18.4.3自定义抽象类计算圆形的面积371
18.4.4利用接口实现选择不同的语言371
18.4.5使用接口作为方法参数进行编程372
18.4.6通过重写虚方法实现加法运算373
18.5小结373
18.6学习成果检验373
第19章 枚举类型与泛型374
19.1枚举类型375
19.1.1枚举类型概述375
19.1.2枚举类型的声明375
19.1.3枚举类型基类——Enum类376
19.1.4枚举类型的使用377
19.2泛型及其使用378
19.2.1泛型概述378
19.2.2类型参数T378
19.2.3泛型接口的声明及使用379
19.2.4泛型方法的声明及使用379
19.3实战380
19.3.1使用枚举判断用户操作权限380
19.3.2使用泛型去掉数组中的重复数字381
19.3.3使用迭代器显示公交车站点383
19.3.4使用分部类实现多种计算方法383
19.3.5通过继承泛型类实现输出学生信息384
19.4小结385
19.5学习成果检验385
第20章 LINQ技术的使用386
20.1 LINQ基础387
20.1.1 LINQ概述387
20.1.2使用var创建隐型局部变量387
20.1.3 Lambda表达式的使用388
20.1.4 LINQ查询表达式389
20.2 LINQ操作SQL Server数据库390
20.2.1使用LINQ查询SQL Server数据库390
20.2.2使用LINQ管理SQL Server数据库393
20.3 LINQ操作其他数据398
20.3.1使用LINQ操作数组和集合398
20.3.2使用LINQ操作DataSet数据集399
20.3.3使用LINQ操作XML400
20.4实战403
20.4.1使用LINQ技术获取文件详细信息403
20.4.2使用LINQ技术分类查询公司员工薪水405
20.4.3使用存储过程查询单表数据406
20.4.4使用LINQ技术防止SQL注入式攻击407
20.4.5使用LINQ技术实现数据分页407
20.4.6从头开始提取满足指定条件的记录409
20.4.7读取XML文件并更新到数据库409
20.5小结411
20.6学习成果检验411
第21章 综合实验(三)——SQL数据表提取器模块412
21.1 SQL数据表提取器概述413
21.1.1附加本地数据库流程413
21.1.2提取表结构流程413
21.1.3导出数据流程413
21.1.4程序预览414
21.2关键技术415
21.2.1添加COM组件415
21.2.2附加SQL Server数据库415
21.2.3分离SQL Server数据库416
21.2.4设置SQL Server数据库模式416
21.3主窗体418
21.3.1主窗体功能概述418
21.3.2主窗体界面设计418
21.3.3检索网络中的服务器419
21.3.4获取数据库的名称419
21.3.5选择提取信息421
21.4附加本地数据库422
21.4.1附加本地数据库功能概述422
21.4.2附加本地数据库界面设计422
21.4.3浏览附加文件路径423
21.4.4实现数据库附加423
21.5提取表结构424
21.5.1提取表结构功能概述424
21.5.2“提取表结构”界面设计424
21.5.3获取表结构信息425
21.5.4导出到Excel425
21.5.5导出到Word426
21.6导出数据427
21.6.1导出数据功能概述427
21.6.2“导出数据”界面设计428
21.6.3获取数据信息428
21.6.4数据的导出429
21.7小结431
21.8学习成果检验431
第4篇 高级应用434
第22章 文件及I/O434
22.1文件操作基础435
22.1.1 File类和FileInfo类介绍435
22.1.2 Directory类和DirectoryInfo类介绍438
22.2文件基本操作440
22.2.1判断文件是否存在440
22.2.2创建文件441
22.2.3复制文件442
22.2.4移动文件442
22.2.5删除文件443
22.2.6获取文件基本信息443
22.3文件夹基本操作444
22.3.1判断文件夹是否存在444
22.3.2创建文件夹445
22.3.3移动文件夹445
22.3.4删除文件夹446
22.3.5遍历文件夹446
22.4 I/O(输入/输出)448
22.4.1流概述448
22.4.2文件I/O流介绍449
22.4.3使用I/O流操作文本文件450
22.4.4使用I/O流操作二进制文件452
22.5实战454
22.5.1文件批量重命名的实现454
22.5.2制作一个分割与合并文件工具457
22.5.3根据日期动态建立文件460
22.5.4复制文件时显示复制进度460
22.5.5伪装文件夹462
22.5.6对指定文件夹中的文件进行分类存储463
22.6小结464
22.7学习成果检验464
第23章 GDI+绘图及打印技术465
23.1 GDI+绘图基础466
23.1.1 GDI+概述466
23.1.2创建Graphics对象466
23.1.3创建Pen对象467
23.1.4创建 Brush对象467
23.2基本图形绘制469
23.2.1绘制直线和矩形469
23.2.2绘制椭圆、圆弧和扇形470
23.2.3绘制多边形472
23.2.4绘制文本472
23.2.5绘制图形473
23.3 Windows打印组件的使用473
23.3.1使用PageSetupDialog组件设置打印文档信息473
23.3.2使用PrintDialog组件显示打印对话框474
23.3.3使用PrintDocument组件设置打印文档475
23.3.4使用PrintPreviewControl组件设置打印预览文档476
23.3.5使用PrintPreviewDialog组件显示打印预览477
23.4实战477
23.4.1应用GDI+技术实现图像的水印效果477
23.4.2应用GDI+技术实现批量图像格式转换480
23.4.3抓取网站整页面484
23.4.4打造自己的开心农场487
23.4.5使用打印组件打印商品入库单信息489
23.5小结491
23.6学习成果检验491
第24章 网络编程492
24.1计算机网络基础493
24.1.1局域网与因特网介绍493
24.1.2网络协议介绍493
24.1.3端口及套接字介绍495
24.2网络编程基础496
24.2.1 System.Net命名空间及相关类的使用496
24.2.2 System.Net.Sockets命名空间及相关类的使用501
24.2.3 System.Net.Mail命名空间及相关类的使用506
24.3实战509
24.3.1创建Web页面浏览器509
24.3.2设计点对点聊天程序510
24.3.3电子邮件的发送与接收512
24.3.4获取网络信息及流量516
24.3.5远程关闭与重启计算机517
24.4小结518
24.5学习成果检验518
第25章 线程的使用519
25.1线程概述520
25.1.1线程的定义与分类520
25.1.2多线程的使用521
25.1.3线程的生命周期521
25.2 C#中的线程类Thread522
25.3线程调度524
25.3.1创建线程524
25.3.2线程的挂起与恢复525
25.3.3线程休眠526
25.3.4终止线程526
25.3.5线程的优先级527
25.4线程同步529
25.4.1线程同步机制529
25.4.2使用lock关键字实现线程同步529
25.4.3使用Monitor驱动对象实现线程同步530
25.4.4使用Mutex类实现线程同步531
25.5实战532
25.5.1使用多线程制作端口扫描工具532
25.5.2使用线程控制向窗体中拖放图片并显示535
25.5.3使用线程扫描局域网IP地址538
25.5.4使用线程制作小游戏539
25.5.5有进度条的文件异步复制功能540
25.6小结542
25.7学习成果检验542
第26章 异常处理与程序调试543
26.1异常处理与程序调试概述544
26.2异常处理语句的使用544
26.2.1使用throw语句抛出异常544
26.2.2使用try…catch语句捕捉异常545
26.2.3使用try…catch…finally语句捕捉异常546
26.3常用的程序调试操作547
26.3.1断点操作547
26.3.2开始、中断和停止程序的执行548
26.3.3单步执行549
26.3.4运行到指定位置550
26.4实战550
26.4.1使用异常处理语句捕获数据库连接异常550
26.4.2通过插入断点查看局部变量的值551
26.5小结552
26.6学习成果检验552
第27章 Windows应用程序打包部署553
27.1 Windows Installer介绍554
27.2创建Windows安装项目554
27.3制作Windows安装程序555
27.3.1添加项目输出555
27.3.2添加内容文件555
27.3.3创建桌面快捷方式556
27.3.4添加注册表项556
27.3.5生成Windows安装程序557
27.4部署Windows应用程序558
27.5实战559
27.5.1为Windows安装程序添加程序组559
27.5.2使用“发布”部署Windows应用程序560
27.6小结561
27.7学习成果检验561
第28章 综合实验(四)——FTP文件管理模块562
28.1 FTP文件管理模块概述563
28.1.1 FTP登录流程563
28.1.2本机文件操作流程563
28.1.3服务器文件上传/下载流程563
28.1.4程序预览564
28.2关键技术564
28.2.1架设FTP服务器564
28.2.2登录FTP服务器566
28.2.3获取服务器上文件的大小567
28.2.4向FTP服务器发送命令568
28.2.5调用系统API569
28.3主窗体设计569
28.3.1主窗体功能概述569
28.3.2主窗体界面设计570
28.4 FTP登录570
28.4.1 FTP登录功能概述570
28.4.2登录FTP服务器571
28.5本机文件操作573
28.5.1本机文件操作功能概述573
28.5.2获取本地磁盘573
28.5.3获取指定磁盘中的文件574
28.5.4批量上传文件575
28.6服务器文件上传/下载579
28.6.1服务器文件上传/下载功能概述579
28.6.2获取FTP服务器中的所有文件579
28.6.3批量下载文件581
28.6.4删除FTP中的文件或文件夹584
28.7小结586
28.8学习成果检验586
第5篇 项目实战588
第29章 进销存管理系统588
29.1需求分析589
29.2系统设计589
29.2.1系统目标589
29.2.2系统功能结构589
29.2.3系统业务流程图589
29.2.4文件组织结构589
29.3系统运行环境590
29.4数据库与数据表设计590
29.4.1数据库分析590
29.4.2数据表设计591
29.4.3数据表逻辑关系592
29.5公共类设计593
29.5.1 DataBase公共类593
29.5.2 BaseInfo公共类596
29.6登录模块设计600
29.6.1登录模块概述600
29.6.2登录模块实现原理600
29.6.3登录模块实现过程600
29.7系统主窗体设计601
29.7.1系统主窗体概述601
29.7.2使用MenuStrip控件设计菜单栏602
29.7.3系统主窗体实现过程602
29.8库存商品管理模块设计603
29.8.1库存商品管理模块概述603
29.8.2自动生成库存商品编号603
29.8.3库存商品管理模块实现过程603
29.9进货管理模块设计607
29.9.1进货管理模块概述607
29.9.2向进货单中批量添加商品607
29.9.3进货管理模块实现过程608
29.10商品销售排行模块设计612
29.10.1商品销售排行模块概述612
29.10.2使用BETWEEN…AND关键字查询数据612
29.10.3商品销售排行模块实现过程612
29.11库存盘点模块设计614
29.11.1库存盘点模块概述614
29.11.2隔离驱动模式的使用614
29.11.3库存盘点模块实现过程614
29.12系统打包部署616
29.13小结618
第30章 企业人事管理系统619
30.1系统分析620
30.1.1需求分析620
30.1.2可行性分析620
30.1.3编写项目计划书621
30.2系统设计622
30.2.1系统目标622
30.2.2系统功能结构623
30.2.3系统业务流程图623
30.2.4系统编码规范624
30.3系统运行环境624
30.4数据库与数据表设计624
30.4.1数据库分析624
30.4.2数据表设计625
30.4.3数据表逻辑关系626
30.5公共类设计627
30.5.1 MyMeans公共类628
30.5.2 MyModule公共类629
30.6登录模块设计640
30.6.1设计登录窗体641
30.6.2按Enter键时移动鼠标焦点641
30.6.3登录功能的实现641
30.7系统主窗体设计642
30.7.1设计菜单栏642