Visual C#网络编程
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 Visual Studio 2008(C#)开发环境

VS 2008作为微软.NET的一个功能强大,集成了多种开发语言(包括VB.NET、VC++.NET、VC# 和ASP.NET)的重量级的统一编程环境,可用于多种类型的程序开发,如基于Web的应用程序、基于WPF的应用程序、基于Windows窗体的应用程序、控制台应用程序和移动应用程序等。本书只介绍基于Windows窗体的网络应用程序开发。

初次运行VS 2008将会出现“选择默认环境设置”对话框,本书介绍C# 网络编程,故在“选择默认环境设置”列表框中选择“Visual C# 开发设置”选项,单击“启动Visual Studio”按钮,经配置后打开VS 2008主窗口,显示“起始页”,如图1.1所示。

1.打开Visual C# 项目

在“起始页”中,允许用户打开或新建项目。若要打开已有项目,可单击最近的项目列表中的某个项目名称;也可以依次选择主菜单“文件”→“打开”→“项目/解决方案”,在弹出的“打开项目”对话框中选择要打开的项目。

图1.1 VS 2008主窗口

2.新建Visual C#项目

若要新建项目,则可单击“新建项目”,将弹出“新建项目”对话框,如图1.2所示。首先,在“项目类型”栏中选择要建立的项目类型,然后在右侧的“模板”栏中选择某个模板类型,选择模板后,在“名称”栏中输入项目的名称,在“位置”栏中输入保存项目的路径,在“解决方案名称”栏中输入解决方案的名称,单击“确定”按钮即可进入项目集成开发环境。

图1.2 “新建项目”对话框

新建立的项目都放在设定的解决方案中,一个解决方案可以含有一个或多个项目。在默认情况下,解决方案的名字与项目名称相同,而且存放项目和解决方案的文件夹名就是项目名称。如果要将新建的项目添入当前打开的解决方案中,则在“解决方案”栏中选择“添入解决方案”选项,单击“确定”按钮后,即把新建立的项目添加到打开的解决方案中,如图1.3所示。

图1.3 添入解决方案

当选择“Windows窗体应用程序”模板后,将进入基于C# 的Windows编程开发环境,如图1.4所示。从图1.4中可以看出,屏幕被分成若干个部分,包括标题栏、菜单栏、工具栏、窗体设计器窗口、工具箱窗口、解决方案资源管理器窗口、属性窗口和输出窗口等。下面将逐一介绍这些部分的使用。

图1.4 C# Windows编程开发环境

3.标题栏

标题栏是VS 2008窗口顶部的水平条,它显示的是应用程序的名字。在默认的情况下,当用户建立一个新项目后,标题栏显示的是如下信息:

WindowsApplication1- Microsoft Visual Studio

其中,“WindowsApplication1”代表解决方案名称。随着工作状态的变化,标题中的信息也随之改变。当处于调试状态时,标题中的信息如下:

WindowsApplication1(正在调试)- Microsoft Visual Studio

在上面的标题信息中,括号中的“正在调试”表明当前的工作状态处于“调试阶段”。当处于运行状态时,该括号中的信息为“正在运行”,表明当前的工作状态处于“运行阶段”。

在标题栏的下面是集成环境的主菜单。菜单是Visual C# 编程开发环境的重要组成部分,开发者要完成的主要功能都是通过菜单或通过与菜单对应的工具栏按钮和快捷键来实现的。在不同的状态下,菜单栏中的菜单项的个数是不一样的,例如,启动VS后,建立项目前(即在“起始页”状态下),菜单栏中有7个菜单项,即文件、编辑、视图、工具、测试、窗口和帮助。而当建立或打开项目后,如果当前活动的窗口是窗体设计器,则菜单栏中有12 个菜单项,即文件、编辑、视图、项目、生成、调试、数据、格式、工具、测试、窗口和帮助;如果当前活动的窗口是代码窗口,则菜单栏中有11个菜单项,即文件、编辑、视图、项目、生成、调试、数据、工具、测试、窗口和帮助。

4.菜单栏

每个菜单包含若干个子菜单项,在子菜单中灰色的选项是不能使用的;菜单项中显示在菜单名后面“()”中的字母为键盘访问键,菜单项后面显示的为快捷键。例如,“新建项目”的操作是先按【Alt+F】组合键打开文件菜单,再按【N】键,或直接按【Ctrl+Shift+N】组合键。

(1)文件菜单(File)。

文件菜单用于对文件进行操作,如打开和新建项目,以及保存和退出等。文件菜单如图1.5所示,对应的主要功能如表1-1所示。

表1-1 文件菜单功能表

(2)视图菜单(View)。

视图菜单用于显示或隐藏各个功能窗口或对话框。若不小心关闭了某个窗口,可以通过选择视图菜单项来显示该窗口。视图菜单还可以控制工具栏的显示,若要显示或关闭某个工具栏,只需选择“视图/工具栏”菜单项,找到相应的工具栏,在其前面打钩或去掉钩即可。视图菜单如图1.6所示,对应的主要功能如表1-2所示。

表1-2 视图菜单功能表

图1.5 文件菜单

图1.6 视图菜单

(3)项目菜单(Project)。

项目菜单主要用于向程序中添加或删除各种元素,如窗体、模块、组件和类等。项目菜单如图1.7所示,菜单中的一般功能使用较简单,有两个重要功能如表1-3所示。

图1.7 项目菜单

表1-3 项目菜单功能表

(4)格式菜单(Format)。

格式菜单用于设计阶段窗体上各个控件的布局。利用它可以对所选定的对象调整格式,在设计多个对象时用来使界面整齐而进行统一操作。格式菜单如图1.8所示,主要功能如表1-4所示。

图1.8 格式菜单

表1-4 格式菜单功能表

(5)调试菜单(Debug)。

调试菜单用于选择不同的调试程序的方法,如逐语句、监视窗口和设断点等。调试菜单如图1.9所示,对应主要功能如表1-5所示。

表1-5 调试菜单功能表

图1.9 调试菜单

(6)工具菜单(Tools)。

工具菜单用于选择在设计工程时的一些工具,例如,可用来添加或删除工具箱项,连接数据库,连接服务器等。工具菜单如图1.10所示。

图1.10 工具菜单

(7)生成菜单(Build)。

生成菜单主要用于生成能够运行的可执行程序文件。生成之后的程序可以脱离Visual C#环境独立运行,也可以用于发布程序。

(8)帮助菜单(Help)。

学会使用帮助是学习和掌握Visual C# 的捷径。Visual C# 可以通过内容、索引和搜索的方法寻求帮助,帮助菜单如图1.11所示。

图1.11 帮助菜单

(9)其他菜单。

菜单栏中还有编辑和窗口菜单,这些菜单中的功能与其他Windows程序基本相同。在此不再详细介绍。

另外,除了菜单条中的菜单项外,若在不同的窗口中单击鼠标右键,可以得到相应的专用快捷菜单,称为上下文菜单或弹出菜单。

5.工具栏

工具栏是在编程环境下提供的对常用命令的快速访问。单击工具栏上的按钮,则执行该按钮所代表的操作。Visual C# 提供了多种工具栏,并可根据需要定义用户自己的工具栏。在默认情况下,Visual C# 中只显示标准工具栏和文本编辑器工具栏,其他工具栏可以通过“视图”菜单中的“工具栏”命令打开(或关闭)。每种工具栏都有固定和浮动两种形式,把鼠标光标移到固定形式工具栏中没有图标的地方,按住左键向下拖动鼠标,即可把工具栏变为浮动的,而如果双击浮动工具栏的标题,则可变为固定工具栏。

工具栏中的按钮如图1.12所示,这是启动Visual C# 之后显示的“标准”工具栏,当鼠标停留在工具栏按钮上时可显示出该按钮的功能提示。工具栏中的按钮如表1-6所示。

表1-6 工具栏中的按钮

图1.12 工具栏中的按钮

6.工具箱

工具箱(Toolbox)提供了一组控件,用户设计界面时可以从中选择所需的控件放入窗体中。工具箱位于屏幕的左侧,在默认情况下是自动隐藏的,当鼠标接近工具箱敏感区域时,工具箱会自动弹开,如图1.13所示,当鼠标离开时又会自动隐藏。

图1.13 控件工具箱

从图1.13可以看出,工具箱是由众多控件组成的,为便于管理,常用的控件分别放在“所有Windows窗体”、“公共控件”、“容器”、“菜单和工具栏”、“数据”、“组件”、“打印”、“对话框”、“WPF互操作性”、“报表”、“Visual Basic PowerPacks”和“常规”12个选项卡中,如图1.14所示,如在“所有Windows窗体”选项卡中,存放了常用的命令按钮、标签和文本框等控件。12个选项卡中存放的内容在表1-7中说明。

图1.14 工具箱选项卡

表1-7 工具箱

选项卡中控件不是一成不变的,可以根据需要增加或删除。在工具箱窗口中单击鼠标右键,在弹出菜单中选择“选择项”,会弹出一个包含所有可选控件的“选择工具箱”的对话框,通过勾选或取消勾选其中的各控件,即可添加或删除选项卡中的控件。

7.窗口

在前面提到过几个窗口中,包括“解决方案资源管理器”、“属性窗口”、“窗体设计器”窗口。集成开发环境中显示的窗口可由用户通过“视图”菜单来设置。

(1)窗体设计器窗口。

窗体设计器窗口简称窗体(Form),是用户自定义窗口,用来设计应用程序的界面,它对应的是程序运行的最终结果。各种图形、图像、数据等都是通过窗体或其中的控件显示出来的。窗体设计器窗口如图1.4所示,设计器窗口的标题是“Form1.cs [设计]”。

在程序窗体的左上角是窗体的标题(如图1.4 中的“Form1”),右上角有三个图标,分别为“最小化”、“还原”和“最大化”。建立一个新的项目后,系统将自动建立一个窗体,其默认名称和标题为Form1。

在设计应用程序时,用户根据需要,从工具箱中选择所需要的工具(控件),然后在窗体的工作区中画出相应的控件对象,这样就完成了窗体的界面设计。

(2)解决方案资源管理器窗口。

解决方案资源管理器窗口位于窗体设计器的右边,它是用来列出当前解决方案中所有项目的,如图1.15所示。“解决方案”中可以包含不同语言的项目。

利用解决方案资源管理器可以方便地组织需要开发的项目、文件,配置应用程序或组件。在解决方案资源管理器窗口中,以树形结构显示了解决方案及其项目的层次结构,可以方便地打开、修改、管理其中的对象,这些对象都是以文件的形式保存在磁盘中的,其中常用的有下列三种。

① 解决方案文件。

解决方案文件是以.sln为扩展名的。在建立一个新项目时,默认的解决方案文件名与项目文件同名,当然可以修改为其他的名字,解决方案名称通常显示在标题栏中。一个解决方案可以由多个项目构成,在解决方案资源管理器窗口中,解决方案名后的括号中的数字表示解决方案中项目的数量。

② 项目文件。

项目文件是以.csproj为扩展名的,每个项目对应一个项目文件,从图1.16可以看出,项目的名称是WinApp1,其存盘文件名即为WinApp1.csproj,解决方案的存盘文件名默认为WinApp1.sln。项目通常由引用和代码模块组成,其中引用含有项目运行时所需的程序集(assembly)或组件,如.NET程序集、COM组件或其他项。

图1.15 解决方案资源管理器窗口

图1.16 系统添加的引用内容

③ 代码模块文件。

代码模块文件是以.cs为扩展名的,在Visual C#中,所有包含代码的源文件都以.cs为扩展名。因此,窗体模块、类模块和其他代码模块在存盘时,扩展名都是.cs只是主文件名不同而已。

(3)属性窗口。

属性窗口位于解决方案资源管理器的下方,属性窗口用于列出当前选定窗体和控件的属性设置,属性即对象的特征。如图1.17所示是名称为“Form1”的窗体对象的属性。

属性显示方式可以有两种,图1.17是按“分类顺序”排列各个属性,图1.18是按“字母顺序”排列各个属性。在属性窗口的上部有一个工具栏,用户可以通过单击其中相应的工具按钮来选择显示方式。属性窗口中的“标题栏”用于显示对象名,“属性值”是属性名对应的设置值,“属性说明”用于说明该属性的用途。类和名称空间位于属性窗口的顶部,其下拉列表中的内容为应用程序中每个类的名字及类所在的名称空间。随着窗体中控件的增加,将把这些对象的有关信息加入到命名空间框的下拉列表中。

图1.17 属性窗口(按分类排序)

图1.18 属性工具栏(按字母排序)

(4)代码窗口。

代码窗口与窗体设计器窗口在同一位置,但被分别放在不同的标签页中,如图1.19所示,其中Form1窗体的代码窗口的标题是“Form1.cs”。代码窗口用于输入应用程序代码,又称为代码编辑器。它包含对象列表框、成员列表框和代码编辑区。对象列表框显示和该窗体有关的所有对象的清单,成员列表框列出对象列表框中所选对象的全部事件,代码编辑框是用于编辑对应事件的程序代码。在图1.19 中,代码窗口显示的是Form1 窗体中Button1对象的Click事件的程序代码。程序代码的第一行和最后一行是系统自动生成的,中间部分是用户自己编写的。

图1.19 代码编辑器

除了上述几种窗口外,在集成环境中还有其他一些窗口,包括输出、命令、任务列表等,将在以后的有关章节中介绍。

8.使用帮助系统

动态帮助与解决方案资源管理器共享一个屏幕区域。可以从“帮助”菜单中选择“动态帮助”命令,将该窗口在屏幕中显示出来。它对用户当前操作提供相关的帮助主题列表。当用户在Visual Studio环境中进行某一项操作时,“动态帮助”将搜索MSDN库,查找与该操作相关的帮助主题,以超链接的形式显示在动态帮助窗口,并把它认为最有用的主题列在第一位。单击一个主题链接后,此主题将会显示在Visual Studio的帮助窗口中。

Visual Studio 2008的帮助系统较先前的版本有了重大改进,可以更高效地访问帮助内容。Visual Studio 2008的帮助系统由文档资源管理器呈现,如图1.20所示。文档资源管理器主要由3部分组成:一是菜单和命令按钮,包括文件、工具等菜单,前进、后退,以及如何实现等命令按钮;二是以选项卡形式集成的目录、索引、帮助收藏夹;三是搜索栏和帮助信息显示的主窗口。

图1.20 帮助界面

对用户界面而言,没有太大变化,但内部进行了很大改进,主要体现在以下几个方面。

(1)默认情况下,是在文档资源管理器中查看帮助内容,而不是在Visual Studio 2008集成开发环境中显示。

(2)增加了“如何实现”按钮设置。该按钮是一个访问帮助系统的新工具,它显示常见开发任务的组织层次结构。对于使用不同程序语言,创建不同类型应用程序的开发人员,该工具提供了数百个任务,且每个任务都包含技术指导内容和示例代码。

(3)提供社区集成功能。用户可以直接从文档资源管理器访问网上论坛,以便提出问题,搜索感兴趣的线索或查看帖子的状态等。

(4)增加搜索结果的摘要。每条搜索结果会显示每个主题的摘要,同时,主题摘要的底部还会显示一些图标用来提供附加信息。

(5)提供帮助筛选器。在目录选项卡中文档树的上方包含一个“筛选依据”下拉框,该下拉框中包括.NET Framework、Visual C#等选项,用户可通过更改选项来设置帮助筛选条件。在索引选项卡中也包括一个同样的筛选器,可确定目录和索引选项卡中显示的项的范围。这些筛选器不会对搜索结果产生影响。

(6)不仅支持搜索本地帮助文件,而且还支持搜索联机帮助内容。联机搜索内容包括在线MSDN、专注于.NET技术的Codezone站点和在线论坛等。