第一图书网

Visual C#2008开发技术实例详解

李继攀 等 著 电子工业出版社
出版时间:

2008-8  

出版社:

电子工业出版社  

作者:

李继攀 等 著  

页数:

788  

内容概要

  本书是一本讲解C#编程语言实例程序的书。本书以“技术要点”、“实现步骤”和“源程序解读”的方式,向读者提供大量独立的、完整的C#语言示例程序。  本书在巩固C#编程语言示例程序的基础上,遍及C#编程语言的各种实用技术,为各个主题的C#应用程序提供直接的实战指导和实现方式,内容涵盖C#编程的各个方面,包括了现今高级的编程技术应用。这些实例具有极强的针对性和实用性,直指C#编程技术的核心内容,揭示其中关键。通过这些生动的实例指导,读者能够按图索骥,由点到面地将学习的编程知识有效地用于实际开发,充分体会到C#编程的乐趣与奥妙。  本书的示例程序包含编者多年的研究和实践心得,可使读者全面地、透彻地理解C#编程的核心技术和技巧,也可以直接修改书中的实例用于实际开发,对提高C#编程实践能力有极大的帮助。

作者简介

  李继攀,1998年开始从事程序员工作,曾负责医疗、政府、交通、企业、物流等行业软件的大型项目,历任程序员、系统分析员、项目经理、技术副总等职务。黄国平,毕业于中山大学数学与计算机科学学院,有7年多的软件开发经验,自从.NET推出以来,一直从事.NET技术和企业应用框架方面的研究,为多个项目提供了优秀的解决方案。精通.NET framework,在工作之余喜欢看书,写书,运动和音乐。《C#实用开发参考大全》也是出自他的笔下。目前就职于速达软件(广州分公司)有限公司的研发中心,从事新产品的研发工作。

书籍目录

第一篇 C#语法篇第1章 C#初步 1.1 创建Hello World控制台程序 1.2 创建Hello World Web应用程序 1.3 创建Hello World Windows应用程序 第2章 数据类型 2.1 C#数据类型与比较 2.2 decimal类型的格式化 2.3 Object类型操作 2.4 string类型简单操作 2.5 多种数字类型混合运算 2.6 结构体声明和初始化 2.7 枚举类型的格式化 2.8 字符类型与数字类型的转换 第3章 数组 3.1 数组的定义 3.2 遍历数组元素 3.3 操作数组 3.4 获取数组属性 3.5 数组参数的使用 第4章 C#语句 4.1 使用break语句 4.2 使用continue语句 4.3 使用do语句 4.4 使用foreach语句 4.5 使用for语句 4.6 使用goto语句 4.7 使用if语句 4.8 使用switch语句 4.9 使用while语句 第5章 运算符 5.1 使用as运算符 5.2 使用is运算符 5.3 使用new运算符 5.4 使用sizeof运算符 5.5 使用typeof运算符 5.6 使用递增递减运算符 5.7 使用赋值运算符 5.8 使用关系运算符 5.9 使用逻辑运算符 5.10 使用算术运算符 第6章 预处理指令 6.1 使用region定义代码区间 6.2 使用define指令 6.3 使用warning和error指令 6.4 使用条件指令 第7章 异常处理 7.1 创建自定义异常 7.2 获取异常信息 7.3 使用finally关键字 7.4 使用try-catch语句捕获异常 7.5 使用多catch语句捕获异常 第二篇 C#面向对象篇第8章 类与接口 8.1 传递类与传递结构体的区别 8.2 多个接口的继承 8.3 复制构造函数 8.4 类的定义 8.5 类的继承 8.6 使用抽象类 8.7 使用静态构造函数 8.8 使用私有构造函数 8.9 使用析构函数 8.10 显式实现接口方法 8.11 显式实现接口属性 第9章 方法和属性 9.1 方法的参数使用 9.2 方法的改写 9.3 方法的重载 9.4 类的属性定义 9.5 使用抽象属性 9.6 使用静态属性 9.7 属性的继承 第10章 命名空间 10.1 创建自定义命名空间 10.2 获取类的完整命名空间 10.3 使用命名空间别名限定符 第11章 委托和事件 11.1 实现接口中的事件 11.2 使用事件和委托 11.3 使用委托 11.4 使用字典存储事件 11.5 委托方法数量的增加与减少 11.6 在类中实现事件处理 第三篇 高级技术篇第12章 ADO.NET编程 12.1 创建Web程序连接Access数据库 12.2 创建Web程序连接SQL Server Express数据库文件 12.3 创建Web程序连接SQL Server数据库 12.4 创建Windows程序连接SQL Server数据库 12.5 定义DataTable架构 12.6 将数据集数据写入到XML和从XML读取数据 12.7 使用BeginExecuteReader实现异步读取数据 12.8 使用DataTableReader浏览数据表中的数据 12.9 使用DataView对数据进行排序和过滤 12.10 使用DataView获取数据视图 12.11 使用DataView类修改数据 12.12 使用ExecuteScalar读取数据 12.13 使用ExecuteXmlReader读取数据 12.14 使用SqlConnection创建数据库连接 12.15 使用SqlDataAdapter获取数据 12.16 使用SqlDataReader获取数据 12.17 使用T-SQL命令填充数据对象 12.18 使用存储过程填充数据对象 第13章 事务处理 13.1 使用SqlTransaction实现数据库操作事务 13.2 使用TransactionScopeOption实现事务选项控制 13.3 使用TransactionScope实现单数据库连接事务操作 13.4 使用TransactionScope实现多数据库连接事务操作 第14章 XML处理 14.1 从XML文件中加载DataSet 14.2 从XML字符串中加载DataSet 14.3 将对象层次结构映射到XML数据 14.4 使用DataSet读取和写入XML架构 14.5 使用XmlDocument保存XML数据 14.6 使用XmlReader读取XML元素 14.7 使用XmlReader读取XML属性 14.8 使用XmlWriter创建XML文件内容 14.9 使用XPathNavigator编辑XML数据 14.10 使用XPathNavigator选择XML数据 14.11 使用XslCompiledTransform类实现XSLT处理器 第15章 文件操作 15.1 创建目录列表 15.2 从文本文件中读取数据 15.3 创建日志文件 15.4 对日志文件的读写操作 15.5 复制文件 15.6 获取驱动器信息 15.7 获取指定文件属性 15.8 使用Windows程序查看文件的访问权限属性 15.9 添加和移除文件的访问控制列表 15.10 文件的压缩与解压缩 15.11 文件目录的创建与删除 15.12 向文本文件中写入数据 15.13 向字符串流中写入和读取数据 第16章 正则表达式 16.1 从Url地址中提取协议和端口号 16.2 更改日期格式 16.3 使用正则表达式获取指定字符 16.4 使用正则表达式去掉无用字符 16.5 通过CaptureCollection获取正则表达式的每个匹配对象信息 16.6 通过GroupCollection获取正则表达式的匹配集合 16.7 验证输入字符串是否是合法的电子邮件格式 第17章 泛型与集合编程 17.1 遍历泛型中元素与遍历数组中元素 17.2 操作Dictionary泛型数据集合 17.3 操作List泛型集合 17.4 初始化ArrayList集合 17.5 创建列表泛型类 17.6 集合的初始化与操作 17.7 使用Hashtable存储集合数据 17.8 使用Queue类存储集合数据 17.9 使用SortedList类存储集合数据 17.10 使用Stack类存储集合数据 17.11 使用泛型方法实现数据交换 17.12 使用泛型约束限定泛型类型 第18章 内存与系统控制 18.1 调查进程的内存使用情况 18.2 关闭界面进程的主窗口 18.3 获取计算机名称及IP 18.4 启动记事本程序 18.5 使用MemoryStream 第四篇 ASP.NET篇第19章 ASP.NET页面 19.1 获取Request类的相关信息 19.2 获取User类的相关信息 19.3 获取配置文件中的常用配置信息 19.4 获取配置文件中的数据库连接字符串 19.5 配置文件的保存 19.6 使用Application存储信息 19.7 使用ASP.NET缓存技术 19.8 使用Cookie存储信息 19.9 使用Response将信息输出到页面 19.10 使用Session存储信息 第20章 ASP.NET控件 20.1 RequiredFieldValidator校验控件的使用 20.2 RangeValidator校验控件的使用 20.3 RegularExpressionValidator校验控件的使用 20.4 CompareValidator校验控件的使用 20.5 实现Button控件的单击事件 20.6 实现CheckBoxList控件的数据绑定 20.7 使用AdRotator控件实现广告条导航 20.8 使用BulletedList控件实现内容项的绑定 20.9 使用Calendar控件实现日期的选择 20.10 使用FileUpload控件实现文件的上传 20.11 使用HiddenField控件实现页面的隐藏域 20.12 使用ImageMap控件实现图片导航 20.13 使用Literal控件实现页面内容的输出 20.14 使用Substitution控件获取服务器时间 20.15 使用View控件实现视图的切换 20.16 使用Wizard控件实现向导过程 第21章 ASP.NET母版页与主题皮肤技术 21.1 对Calendar控件使用皮肤 21.2 对GridView控件使用皮肤 21.3 对Login控件使用皮肤 21.4 对文本框和标签控件使用皮肤 21.5 实现皮肤的切换 21.6 使用单一母版页 21.7 实现多母版页的切换 21.8 使用母版页技术实现网站的布局统一 第22章 ASP.NET站点导航 22.1 实现静态的TreeView控件导航 22.2 实现TreeView的XML数据源绑定 22.3 实现Menu控件的导航 22.4 使用网站导航控件实现网站导航 22.5 实现自定义的站点导航提供程序 第23章 ASP.NET数据源与数据绑定技术 23.1 Access数据库的数据绑定实现 23.2 ObjectDataSource的数据绑定 23.3 SqlDataSource数据源控件的参数使用 23.4 SqlDataSource数据源控件的数据过滤 23.5 通过SqlDataSource数据源控件修改数据 23.6 XmlDataSource数据源的GridView控件绑定 23.7 XmlDataSource数据源的TreeView控件绑定 23.8 站点地图数据的绑定实现 23.9 使用Repeater控件进行数据绑定 23.10 实现DataList绑定控件的数据绑定 23.11 实现DataList控件对数据的选择与删除 23.12 实现DataList控件对数据的编辑 23.13 使用DetailsView控件绑定数据 23.14 使用DetailsView控件的模板 23.15 使用DetailsView控件进行数据操作 23.16 使用FormView控件进行数据绑定 23.17 使用FormView控件进行数据操作 23.18 使用GridView控件进行数据绑定 23.19 使用GridView控件的模板列 23.20 使用GridView控件的CheckBox模板列 23.21 使用GridView控件进行数据的选择与删除 23.22 使用GridView控件实现数据的排序与分页 23.23 使用GridView控件编辑数据 第24章 ASP.NET个性化用户配置 24.1 创建Web部件页 24.2 更改Web部件的显示模式 24.3 Web部件的连接 24.4 Web部件的导入 24.5 Web部件的自定义 24.6 在运行时增加Web部件 24.7 简单的个性化配置 24.8 复杂属性的个性化配置示例 24.9 个性化配置组示例 24.10 个性化配置的继承性 24.11 个性化配置的移植 24.12 使用用户控件实现Web部件个性化配置 第25章 ASP.NET成员与角色管理 25.1 登录系列控件的自定义设置 25.2 使用登录系列控件创建网站程序安全登录 25.3 实现网站用户及角色的管理 25.4 匿名用户的授权 第26章 ASP.NET AJAX编程 26.1 使用ASP.NET AJAX调用Web服务 26.2 使用ASP.NET AJAX的事件触发器 26.3 使用ASP.NET AJAX实现GridView的无刷新分页 26.4 UpdateProgress控件示例 26.5 Timer控件示例 26.6 Accordion控件示例 26.7 AlwaysVisibleControl控件示例 26.8 CollapsiblePanel控件示例 26.9 ConfirmButton控件示例 26.10 DragPanel控件示例 26.11 DropDown控件示例 26.12 FilteredTextBox控件示例 26.13 PopupControl控件示例 26.14 TextboxWatermark控件示例 26.15 ValidatorCallout控件示例 第五篇 Windows程序篇第27章 Windows窗体 27.1 处理窗体的键盘点击事件 27.2 创建多文档界面应用程序 27.3 创建非矩形Windows窗口 27.4 通过编程的方式调整窗体属性 27.5 通过编程方式添加窗体中的控件 27.6 显示有模式和非模式Windows窗体 27.7 在Windows窗体控件中处理输入事件 27.8 在Windows应用程序的不同窗体间传递数据 第28章 Windows控件编程 28.1 ComboBox控件和ListBox控件的数据绑定 28.2 ListView控件添加和移除项 28.3 处理在DataGridView控件中输入数据时发生的错误 28.4 创建密码文本框 28.5 创建未绑定的DataGridView控件 28.6 更改MonthCalendar控件的外观 28.7 从DateTimePicker控件返回日期 28.8 将快捷菜单附加到TreeView节点 28.9 使用MaskedTextBox控件确保日期输入的合法性 28.10 将数据绑定到MaskedTextBox控件 28.11 将文件加载到RichTextBox控件中 28.12 控制MonthCalendar控件的选择范围 28.13 确定CheckedListBox控件中的选定项 28.14 确定被单击的TreeView节点 28.15 设置TreeView控件的图标 28.16 使用BindingNavigator控件浏览数据集 28.17 使用BindingSource更新数据源 28.18 使用CheckBox控件的选择事件控制窗体属性 28.19 使用ContextMenuStrip实现菜单 28.20 使用ListView和TreeView控件创建资源管理器界面 28.21 使用MenuStrip创建多文档窗口 28.22 使用ProgressBar创建应用程序的进度条 28.23 使用RichTextBox控件显示Web样式的链接 28.24 使用SplitContainer水平拆分窗口 28.25 使用ToolStripDropDown更改字体颜色 28.26 使用TrackBar创建应用程序的滑块 28.27 使用BindingSource排序和筛选数据 28.28 使用设计器将数据绑定到DataGridView控件 28.29 为RichTextBox控件选定文本设置字体属性 28.30 在DataGridView单元格中放置自定义控件列 28.31 在ListBox控件中添加和移除项 28.32 在ListView控件中实现文本的搜索 28.33 在RichTextBox控件中启用拖放操作 28.34 使用TextBox控件的自动完成功能 第29章 Windows对话框 29.1 使用OpenFileDialog打开文本文件 29.2 使用FolderBrowserDialog选择文件夹 29.3 通过ColorDialog设置颜色 29.4 通过FontDialog设置文本字体 29.5 通过PageSetupDialog显示打印设置 29.6 通过PrintDialog打印 29.7 显示消息框 第30章 Windows图形编程 30.1 窗体上绘制空心椭圆和空心矩形 30.2 绘制垂直文本 30.3 创建单一图形的路径 30.4 创建水平渐变颜色的线条 30.5 创建缩略图像 30.6 对区域使用剪辑 30.7 绘制不透明和半透明的线条 30.8 加载和显示位图 30.9 使用DrawString绘制居中文本 30.10 使用DrawText绘制居中文本 30.11 使用复合模式控制Alpha混合 30.12 使用路径渐变填充椭圆 30.13 旋转、反射和扭曲图像 30.14 用不透明和半透明的画刷绘制图形 30.15 缩放时使用插值模式控制图像质量 第六篇 .NET特性篇第31章 反射与程序集 31.1 使用Type类查看类型信息 31.2 创建应用程序域 31.3 定义和执行动态方法 31.4 获取程序集的类型和成员信息 31.5 获取程序集的完整名称 31.6 将程序集加载到应用程序域 31.7 判断文件是否为程序集文件 31.8 配置应用程序域 31.9 使用反射检查和实例化泛型类型 31.10 卸载应用程序域 第32章 线程 32.1 多线程的创建实例 32.2 获取线程编号 32.3 使用线程池 32.4 使用线程的优先级 32.5 使用线程同步事件处理线程 32.6 同步线程的创建和使用 32.7 线程的创建与终止 32.8 线程的睡眠与中断 第33章 注册表编程 33.1 遍历注册表项中的所有值 33.2 创建注册表项 33.3 删除注册表项 33.4 删除注册项中的值 33.5 设置注册表项的名称和值 33.6 通过界面操作注册表 第34章 COM的互操作 34.1 Word拼写检查 34.2 播放AVI文件 34.3 播放波形文件 34.4 创建Excel电子表格 34.5 创建复杂的Excel文件 34.6 创建复杂的Word文件 34.7 关闭注销重启计算机 34.8 获取和设置系统时间 34.9 简单的MP3播放器 34.10 实现互操作的回调函数 第35章 本地化 35.1 分析Unicode数字 35.2 根据特定区域性格式化日期和时间 35.3 根据特定区域性格式化数值 35.4 根据特定区域性进行排序 35.5 获取本地区域名称 35.6 获取区域具体信息 35.7 获取区域性名称列表 第七篇 .NET其他应用篇第36章 控制台应用 36.1 从控制台获取键入的内容 36.2 控制台程序的声音控制 36.3 清除控制台显示 36.4 设定控制台窗口大小 36.5 设定控制台光标位置 36.6 设定屏幕缓冲区的高度和宽度 36.7 设置控制台颜色 36.8 改变控制台的标准输出流 36.9 改变控制台的标准输入流 第37章 Web服务 37.1 Web服务的对象继承 37.2 创建ASP.NET Web服务 37.3 从浏览器访问Web服务 37.4 创建Web服务的方法说明和消息名 37.5 创建并处理Web服务异常 37.6 定义和处理Web服务的SOAP头 37.7 使用ASP.NET程序调用Web服务 37.8 使用Web服务管理状态 37.9 使用Web服务中的事务 37.10 使用Windows程序调用Web服务 37.11 使用控制台程序调用Web服务 37.12 Windows身份验证Web服务 37.13 通过ASP.NET异步访问Web服务 37.14 通过Windows程序异步访问Web服务 37.15 在Web服务客户端上启用输出缓存 第38章 Windows服务与Remoting分布式应用 38.1 使用服务控制控件管理服务 38.2 检索服务列表 38.3 创建自动发送邮件的Windows服务 38.4 创建与调用Http通道Remoting服务 38.5 创建与调用Tcp通道Remoting服务 38.6 异步远程调用 第39章 Office应用之Excel篇 39.1 Excel的ListObject区域排序 39.2 Excel的NamedRange区域排序 39.3 NamedRange控件的事件编程 39.4 创建Excel菜单 39.5 将Excel单元格绑定到表中的多个列 39.6 将Excel单元格绑定到数据库字段 39.7 将Windows窗体信息显示到Excel单元格中 39.8 将数据绑定到Excel操作窗格上的控件 39.9 将样式应用于工作簿范围 39.10 使用单选按钮更新工作表中的图表 39.11 使用复选框控件更改Excel工作表格式设置 39.12 使用缓存在Excel中显示数据库记录 39.13 在Excel中实现日期的选择 39.14 在Excel中实现数据的校验 39.15 在Excel中实现文字的排列方式 39.16 在Excel中搜索字符 39.17 在包含选定单元格的工作表行中更改格式设置 第40章 Office应用之Word篇 40.1 操作窗格数据绑定 40.2 创建Word表 40.3 创建Word工具栏 40.4 创建书签的快捷菜单 40.5 计算Word文档中的字符数 40.6 检索Word文档范围中的开始字符和结束字符 40.7 向Word表添加行和列 40.8 在Word文档中插入文本 40.9 在Word文档中定义和选择范围 40.10 在文档中设置文本格式 40.11 在文档中搜索文本

章节摘录

  第8章 类与接口  对于所有的面向对象编程语言,类和接口都是最重要的数据结构,绝大部分的编程实现都需要使用这两种数据结构。类和接口是C#编程语言最常用、最核心的数据结构。在C#编程语言中,一切数据类型都是基于Object类创建的。接口定义类的数据和方法规范,类似于一种契约,继承接口的类必须实现接口中所描述的属性、方法、事件和索引器。  8.1 传递类与传递结构体的区别  在C#编程语言中,类属于引用类型的数据类型,结构体属于值类型的数据类型,这两种数据类型的本质区别主要是各自指向的内存位置不同。传递类的时候,主要表现为是否同时改变了源对象。  技术要点  本示例主要说明了传递类与传递结构体的区别,技术要点如下。  ? 类在传递的时候,传递的内容是位于托管内存中的位置,结构体在传递的时候,传递的内容是位于程序堆栈区的内容。当类的传递对象修改时,将同时修改源对象,而结构体的传递对象修改时,不会对源对象产生影响。  ? 在一个类中,可以定义默认的、不带参数的构造函数,而在结构体中不能定义默认的、不带参数的构造函数。两者都可以定义带有参数的构造函数,通过这些参数给各自的字段赋值或初始化。  实现步骤  (1)创建控制台应用程序项目,命名为“ClassAndStruct”。  (2)打开并编辑Program.cs文件,代码如下所示。  (3)按F5键运行程序,运行结果如下所示。  类的数据:姓名-Pony Smith 年龄-33  结构体的数据:姓名-Pony Smith 年龄-43  源程序解读  (1)本示例为了说明类和结构体在传递时的差别,在程序中分别定义了表示员工的类classEmployee类和表示员工的结构体structEmployee,并定义了各自的字段和构造函数。在主程序入口Main方法中,声明类的实例clsEmpA和clsEmpB,并使用构造函数创建clsEmpA类实例,然后将clsEmpA类实例传递给clsEmpB类实例,修改clsEmpB类实例的字段值,最后打印clsEmpA类实例中的字段,查看字段的值是否随clsEmpB类实例字段的修改而变化。同时,声明结构体的实例strctEmpA和strctEmpB,并使用构造函数创建strctEmpA结构体实例,然后将strctEmpA结构体实例传递给strctEmpB结构体实例,修改strctEmpB结构体实例的字段值,最后打印strctEmpA结构体实例中的字段,查看字段的值是否随strctEmpB结构体实例字段的修改而变化。程序的流程图如图8.1所示。


编辑推荐

  400多个实例程序源代码+5个典型系统+10个学习视频+600多页学习电子书。  本书优势:  1.为编程人员提供实用的编程指导本书以C#编程的实战技术为线索,精心组织400多个编程人员需要学、看得懂、用得上的实例,辅以精辟的要点、难点说明,对于复杂的程序以流程图表示程序的结构。  2.具有独立的可操作性  本书的每个实例都独立成篇,章节之间不存在纠缠不清的瓜葛。  3.具有极高的使用价值  本书将抽象的理论与实际应用紧密结合,通过应用在各个实际项目中的实例,充分体现C#编程技术的特点。  4.本书的学习曲线极为平缓  不使用传统的平面的学习方式,而使用立体的学习方式,直接从实例的学习来把握理论知识,使读者获得强烈的成就感和趣味性。  5.配有学习论坛  作者会及时回答读者提问,并提供各种技术文章。

图书封面

广告

下载页面


Visual C#2008开发技术实例详解 PDF格式下载



相关图书