本节介绍Visual Studio 2005的使用以及如何进行几类简单的应用程序类型的开发,在这些实例中将逐渐介绍C#中的一些知识。
Visual Studio 2005是微软公司最新的开发套件,对.NET框架2.0版提供了最好的支持,因此,本书采用Visual Studio 2005进行讲解。
安装Visual Studio 2005后,选择“开始”→“程序”→“Microsoft Visual Studio 2005”→“Microsoft Visual Studio 2005”命令,即可进入Visual Studio 2005的使用界面,其界面如图1-7所示。
图1-7 Visual Studio 2005界面
在正式使用Visual Studio 2005之前,先介绍几个对Visual Studio 2005使用很有帮助的设置菜单。
选择“工具”→“导入导出设置”命令,将出现如图1-8所示的“导入和导出设置向导”对话框。在这个对话框里,可以进行Visual Studio 2005设置的导入和导出。如果读者曾经使用过Visual Studio 2005并进行了一系列的自定义设置时,可以使用该向导将自己的设置导入当前的环境中。
图1-8 “导入和导出设置向导”对话框
当读者对Visual Studio 2005进行了自定义设置,则应当立即使用该向导对自定义的设置进行导出和备份,这样即使Visual Studio 2005崩溃或读者使用不同计算机上的Visual Studio 2005时,也可以迅速恢复自己的设置。
Visual Studio 2005的大部分自定义设置都在“工具”→“自定义”命令和“工具”→“选项”命令中。其中“自定义”命令中主要是对Visual Studio 2005的显示界面和菜单快捷键进行设置,以便用户能方便地使用自己常用的功能。
“工具”→“选项”命令中的设置相对复杂,对Visual Studio 2005的各个功能都可以进行详尽的设置,此处仅介绍一个常用的设置,即行号的显示。
在Visual Studio 2005中,默认是不显示代码的行号的。为了使用、编译和调试的方便,经常需要查看代码中某行的代码,因此需要对此设置进行更改。选择“工具”→“选项”命令,在弹出的“选项”对话框中选择左侧树形列表的“文本编辑器”→“所有语言”选择项,如图1-9所示。
图1-9 “选项”对话框
选中对话框右侧的“行号”单选按钮,即可在Visual Studio 2005的代码编辑器中显示行号。
Visual Studio 2005的自定义设置非常多,读者可以在使用的过程中逐步调整,以提高使用效率。
下面创建一个简单的Windows控制台应用程序。
创建一个Windows控制台应用程序,并在控制台中输出“你好,C#!”。
(1)启动Visual Studio 2005。
(2)选择“文件”→“新建”→“项目”命令,打开“新建项目”对话框,如图1-10所示。
图1-10 “新建项目”对话框
(3)在“项目类型”树形列表中选择“Visual C#”→“Windows”选项后,在“模板”列表中选择“控制台应用程序”选项。
(4)在“名称”文本框中输入项目的名称,此处为“ConsoleHello”。
(5)单击“确定”按钮,创建项目。
(6)Visual Studio 2005已经默认添加了几个文件,并自动打开其中的一个文件Prog-
ram.cs,该文件的内容如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleHello
{
class Program
{
static void Main(string[] args)
{
}
}
}
(7)按Ctrl+F5组合键运行程序,运行结果如图1-11所示。
图1-11 运行结果1
(8)此时程序中没有任何输出代码,因此结果中看不到任何自定义的输出,修改代码如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleHello
{
class Program
{
static void Main(string[] args)
{
//输出"你好,C#!"到控制台。
Console.WriteLine("你好,C#!");
}
}
}
按Ctrl+F5组合键运行程序,运行结果如图1-12所示。
图1-12 运行结果2
按任意键可退出程序。
(1)using。
第1~3行中的3条语句包含了using关键字,using关键字有几种用途,其中最常见的功能是用于为命名空间创建别名或导入其他命名空间中定义的类型。
本例中第12行代码中使用的Console.WriteLine方法实际上是一个简写,其全称是System.
Console.WriteLine,但由于在代码的开始使用using指令引入了System命名空间,所以可以直接使用Console.WriteLine来进行输出。
(2)命名空间。
命名空间采用namespace关键字进行声明。命名空间范围允许开发人员组织代码,并为开发人员提供了创建全局唯一类型的方法。其声明格式十分简单,如代码的第5行即声明了一个名为ConsoleHello的命名空间。
声明了ConsoleHello命名空间后,该命名空间下的类将会由其全称来表示。例如,实例中的Program类的全称为ConsoleHello.Program类。如果还有另外一个命名空间名为ConsoleHi,该命名空间下也可以声明一个Program类,而并不会引起冲突。这是因为该Program类的全称为ConsoleHi.Program。
(3)类。
C#是一种完全面向对象的语言,每一个C#的程序中至少应包括一个自定义类,如本例中的Program类。C#中使用class关键字对类进行声明。class关键字后面紧跟类名,类名后的左大括号“{”表示类定义的开始;代码中第14行的右大括号“}”表示类定义的结束。C#中括号必须成对出现,否则会产生编译错误。
这里给出一个另外类的定义,代码如下:
class Hello
{
}
(4)Main方法。
C#创建的可执行程序中必须包含一个Main方法。该方法是程序的入口点,即程序执行时依次执行Main方法中的代码。Main方法的定义必须按照实例中第9行代码的样式进行定义。
其中static关键字表示Main方法时一个静态方法,以后将会讨论静态方法的相关内容。void关键字表示该方法执行后不返回任何信息。方法内部的代码用成对的大括号包围,与类的定义类似。
(5)代码注释。
代码注释的作用是为了提高程序的可读性,使得程序更便于阅读,并且能被其他程序开发人员所理解,便于协作开发。代码的第11行出现的注释称为单行注释,单行注释从“//”开始,到本行的结束。下面的代码就是一个单行注释。
//输出"你好,C#!"到控制台。
单行注释也可以出现在某行代码的末尾,如下所示:
Console.WriteLine("你好,C#!");//输出"你好,C#!"到控制台。
当需要进行大范围的注释时,可以使用注释的另一种格式,称为多行注释。多行注释以“/*”开始,“*/”结束。以下代码是几个多行注释的实例。
/*输出"你好,C#!"到
控制台。*/
/*输出"你好,C#!"到控制台。*/
(6)输出。
实例中第12行代码中的Console.WriteLine方法实现了输出功能,将一部分文字输出到控制台当中,也就是常说的DOS窗口或命令行窗口。
Console.WriteLine方法后面的括号中包含了输出的内容,这部分输出的内容被称为参数。在本例的Console.WriteLine方法中该参数是一个字符串,该字符串的内容是“你好,C#!”。在C#中,用双引号包含的内容被称作字符串,输出时只会输出引号之间的内容,而不输出双引号。
本小节介绍如何使用Visual Studio 2005开发一个简单Windows窗体应用程序。
创建一个Window窗体应用程序,并弹出“你好,C#!”对话框。
(1)启动Visual Studio 2005。
(2)选择“文件”→“新建”→“项目”命令,打开“新建项目”对话框。
(3)在“项目类型”树形列表中选择Visual C#→Windows选项后,在“模板”列表中选择“Windows应用程序”。
(4)在“名称”文本框中输入项目的名称,此处为“WindowsHello”。
(5)单击“确定”按钮,创建项目。
(6)Visual Studio 2005自动为项目添加了几个文件,除了上一小节中介绍的Program.cs文件外,还多了一个Form1.cs文件,下面逐一说明。
(7)打开Program.cs文件,代码如下:
using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace WindowsHello
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
(8)双击打开Form1.cs文件时将会打开一个窗口,这是Visual Studio 2005默认生成的。右击Form1.cs文件,选择“查看代码”命令查看Form1.cs文件的代码,其代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsHello
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}
(9)双击打开Form1.cs窗口,在Visual Studio 2005左侧的“工具箱”面板中寻找“通用控件”栏中的Button控件。双击该Button控件,会将该Button控件添加到Form1.cs窗口中,并自动更名为button1。
(10)双击添加到Form1.cs窗口中的button1控件,Visual Studio 2005将会自动转入代码编辑界面,在光标处添加如下代码:
//使用MessageBox产生一个对话框
MessageBox.Show("你好,C#!");
按Ctrl+F5组合键运行程序,运行结果如图1-13所示,单击窗口中的“button1”按钮,结果如图1-14所示。
图1-13 运行结果1 图1-14 运行结果2
(1)XML文档注释。
除去上一小节介绍的几部分外,首先是在Program.cs文件中第9~11行的类似注释的代码。这部分代码的确是注释,但却是一种特殊的注释,称作XML文档注释,它是C#所特有的一种注释。XML文档注释可以为代码创建文档,方法是在XML标记所指的代码块前面,直接在源代码的特殊注释字段中包括XML标记。
本例中第10行的“The main entry point for the application.”将称为类Program的说明,如果为程序生成文档时,将会按照XML文档注释生成。
(2)STAThread。
在Program.cs文件中第12行有一个“[STAThread]”属性。使用Windows窗体的任何应用程序的入口点上必须有此属性;如果没有此属性,则Windows组件可能无法正常工作。该属性还有比较复杂的应用,这里暂不介绍。
(3)Application类。
Main方法由几行以Application为开头的代码组成,其中最重要的是最后一句,即第17行代码。该行代码表示程序将启动“Form1”窗体。正如结果中看到的一样,运行程序后,显示的是Form1窗体。
(4)分部类。
在“Form1.cs”文件第11行代码中出现了类的定义,其中出现了一个partial关键字。该关键字表示该类定义只是Form1类的一部分,还有另外一部分在另外的文件中。编译时,Visual Studio 2005将会自动处理这部分内容。分部类还有比较复杂的应用,此处暂不介绍。
(5)单击事件。
在进行实现步骤(10)的时候,Visual Studio 2005自动转入代码编辑界面的同时还自动为程序添加了一些代码,该代码如下:
private void button1_Click(object sender, EventArgs e)
{
}
这段代码的作用是当程序运行,用户单击button1按钮时,程序将会执行这段代码大括号中间的内容。
(6)MessageBox。
在本例中,向“button1_Click”方法中添加了两行代码。其中第一行为注释代码,第二行为产生对话框的代码。该代码的使用方法类似于Console.WriteLine,此处暂不做介绍,读者可以将其理解为Windows窗体环境下的Console.WriteLine。
本小节介绍如何使用Visual Studio 2005创建一个简单的ASP.NET应用程序。
创建一个ASP.NET应用程序,并输出“你好,C#!”。
(1)启动Visual Studio 2005。
(2)选择“文件”→“新建”→“网站”命令,打开“新建网站”对话框。
(3)在“模板”列表中选择“ASP.NET网站”。
(4)在“位置”文本框中输入项目的位置,将最末尾处的“WebSite1”修改为“WebHello”。
(5)单击“确定”按钮,创建项目。
(6)Visual Studio 2005自动为项目创建了几个文件,并自动打开了名为Default.aspx的文件,其代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebHello._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:
//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
(7)在第12行空代码处加入如下代码:
你好,C#!
按Ctrl+F5组合键运行程序,运行结果如图1-15所示。
图1-15 运行结果
(1)实例解释。
本实例主要是为了演示如何创建一个ASP.NET应用程序。本实例中没有展现ASP.NET的强大功能,仅仅是一个静态的页面。
(2)HTML语言。
创建任何一种类型的动态网页应用程序,都离不开HTML语言,HTML语言是标准的静态网页语言,所以创建ASP.NET应用程序时也需要学习HTML语言的相关知识。此处主要是演示ASP.NET的创建过程,对实例中的HTML语言暂不做解释。