《Visual C# NET程序設計基礎》課件001_第1頁
《Visual C# NET程序設計基礎》課件001_第2頁
《Visual C# NET程序設計基礎》課件001_第3頁
《Visual C# NET程序設計基礎》課件001_第4頁
《Visual C# NET程序設計基礎》課件001_第5頁
已閱讀5頁,還剩156頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第1章.NET與VS.NET2005集成開發(fā)環(huán)境1.1.NETFramework簡介1.2C#語言的特點 1.3VS?.NET2005集成開發(fā)環(huán)境的介紹1.4

實例:創(chuàng)建?.NET應用程序 1.5VS.NET2005幫助系統(tǒng) 本章小結

練習與作業(yè) 上機部分(一)

學習目標●了解?.NET平臺的構成●熟悉VS.NET2005集成開發(fā)環(huán)境(IDE)●編寫一個基于?.NET平臺的應用程序

.NET是微軟推出的一種全新的開發(fā)平臺。對.NET的需求源于Internet的高速發(fā)展。在Internet高速發(fā)展的背景下應用程序不再單一地是桌面運行的可執(zhí)行文件,應用程序的模式已經(jīng)發(fā)生了根本的變化,這些變化主要體現(xiàn)在以下方面:

(1)應用程序應隨時、隨地并且在任何設備中都可用。

(2)軟件作為一種服務來提供,例如電子郵件服務。

(3)應用程序必須具有互操作性,應用程序之間協(xié)同工作、數(shù)據(jù)交換的需求也越來越高。Microsoft?.NET就是在這樣的大環(huán)境下誕生的,.NET刺激了下一代計算技術的發(fā)展,加速了新一代Internet的來臨,并為后一代應用程序的開發(fā)提供了便利。它為創(chuàng)建、部署以及管理安全、強大、高效的應用程序提供了前所未有的最大支持。通過.NET平臺,我們不僅可以開發(fā)出功能更強大的應用程序,而且還可以開發(fā)出豐富的Web應用和服務。

.NET有一個龐大的技術體系,讀者如何制定自己的學習步驟呢?圖1-1為讀者顯示了.NET技術學習全景圖。圖1-1.NET技術學習全景圖

通過圖1-1可以看出,.NET平臺中的程序設計技術主要分為以下四個方面:

WindowsForms技術:可視化程序設計,主要用來開發(fā)Windows應用程序。

ASP.NET技術:主要用來設計和開發(fā)網(wǎng)站。

WebService技術:主要用來開發(fā)基于互聯(lián)網(wǎng)的Web服務。移動設備開發(fā)技術:主要用來開發(fā)手機等移動設備的軟件和服務。學習需要循序漸進,在掌握上述四大核心開發(fā)技術之前,我們必須先了解?.NET平臺的構成,然后學會使用基于?.NET平臺的開發(fā)環(huán)境VS.NET和熟練掌握一種支持.NET的核心開發(fā)語言C#。在此基礎上,本書主要為讀者介紹WindowsForms程序設計技術。1.1.NETFramework簡介

Framework即框架,是開發(fā)人員對編程語言命令集的稱呼。.NETFramework的意義就在于只用統(tǒng)一的命令集即可支持任何的編程語言。

.NETFramework是?.NET平臺的基礎架構,我們通常所說的?.NET平臺實際上就是泛指.NETFramework,它是Microsoft為開發(fā)應用程序而創(chuàng)建的一個富有革命性的新平臺。具體講,它就是一個軟件包,里面定義了.NET應用程序的開發(fā)和運行環(huán)境,以及可以在.NET應用程序中使用的類庫,類似于Java的虛擬機。它不僅便于開發(fā)Internet上運行的應用程序,而且也可用于開發(fā)運行于Windows桌面上的傳統(tǒng)業(yè)務應用程序。.NETFramework包括最早期的1.0版,目前流行的1.1版和2.0版,還有正在測試的3.0版。讀者可以從微軟公司的網(wǎng)站或其他共享站點下載?.NETFramework安裝包。安裝后,你的電腦就具備了開發(fā)?.NET應用程序的運行環(huán)境和在?.NET應用程序中使用的類庫。

.NETFramework包含以下兩個主要組件:

公共語言運行時(CommonLanguageRuntime,CLR)。

統(tǒng)一的類庫集。對于技術開發(fā)人員來說,.NETFramework的兩大特性是非常卓越的。首先是其所提供的公共語言運行時(CLR)對多語言的支持,任何.NET語言都可以使用.NET類庫中的所有類,例如VB.NET、C#、C++.NET,實際上使用的都是.NET提供的統(tǒng)一的基礎類,這意味著對一種語言可用的功能對于任何其他.NET語言也是可以用的。

另一方面就是平臺中附帶了許多開發(fā)人員可以重用的基礎類,包括文件讀寫類、數(shù)據(jù)庫訪問類、線程類等。類庫的好處就在于軟件開發(fā)人員可以重用代碼,避免重復開發(fā)并縮短開發(fā)時間。Microsoft.NETFramework(FCL)是迄今所有面向對象語言中最大的類庫。除CLR和類庫外,.NETFramework還包括編程語言和ASP.NET。其中支持.NETFramework的一些編程語言有C#、C++.NET、VB.NET和Jscript。ASP.NET主要用于簡化Web應用和服務的開發(fā),不但是傳統(tǒng)意義上的應用和服務,而且還包括移動設備上的應用和開發(fā)。1.1.1.NETFramework的體系結構

.NETFramework是一個創(chuàng)建、部署和運行應用程序的多語言多平臺環(huán)境。它使程序員能夠開發(fā)用于Windows、Internet、PocketPC(個人掌上電腦)、SmartPhone(智能電話)等多種平臺的應用程序。此外,它還提供了多種編程語言可供選擇。圖1-2顯示了.NETFramework的體系結構。程序員可以使用.NET支持的語言之一來開發(fā)應用程序。這些應用程序使用的基類庫由.NETFramework類庫(FCL)提供。例如,要顯示一個對話框,可以編寫如下代碼:MessageBox.Show(“我是一個對話框”)其中的MessageBox就是類庫中的一個類。Show是這個類的用來顯示對話框的方法。圖1-2.NETFramework的體系結構

從圖1-2可以看出,只要支持.NETFramework,則表明其支持.NET的開發(fā),這與支持JVM就支持Java開發(fā)的機制是一樣的,程序通過使FCL成為所有.NET語言的公共類庫來實現(xiàn)。此外,.NETFramework的公共語言運行時還管理

.NET應用程序的執(zhí)行。

C#

.NET中的核心語言,也是使用頻率最高的語言,在本書中,我們將主要介紹如何通過C#

語言來進行

.NET開發(fā)。1.1.2.NETFramework的組件

.NETFramework由框架類庫(FCL)和公共語言運行時(CLR)這兩個主要組件組成。圖1-3顯示了.NETFramework的組件及其要素。圖1-3.NETFramework的組件

其中:

WebForms提供一組網(wǎng)頁設計的類,與HTML表單很相似。

WebServices包括一組設計Web服務的類,可以用來構造網(wǎng)絡服務的應用程序。

WinForms提供一組Windows的窗體應用程序設計和開發(fā)的類。

ASP.NET提供一組用于創(chuàng)建Web應用程序的類。

ADO.NET提供一些可與數(shù)據(jù)庫進行交互的類。

XML類啟用XML操作、搜索和轉換。

基本框架類提供基本功能,如輸入/輸出、字符串操作、安全性管理和網(wǎng)絡通信等。

通用語言規(guī)范(CLS)規(guī)定了使用所有語言時都必須遵循的基本語言功能的子集。

公共類型系統(tǒng)(CTS)描述了如何在運行時聲明、使用和管理像類、結構、枚舉、接口等類型,從而便于在各語言之間使用這些類型。通常,語言編譯器將代碼轉換為用戶可以運行的可執(zhí)行代碼,運行時環(huán)境為可執(zhí)行代碼提供操作系統(tǒng)服務。在.NET出現(xiàn)之前,每種語言都有自己的運行時環(huán)境。例如,C++帶有一個名為MSVCRT.DLL的DLL文件,以負責C++程序的執(zhí)行,VisualBasic也帶有一個名為MSVBVM60.DLL的DLL文件。.NETFramework的主要目的之一是將各種運行時環(huán)境結合起來,使開發(fā)人員可以使用單一的運行時服務。因此,.NETFramework提供了公共語言運行時(CLR),CLR為與.NETFramework配合使用的任何語言提供了諸如內(nèi)存管理、安全性和錯誤處理等功能。.NET中的所有代碼都由CLR來管理,因此稱為“托管代碼”。托管代碼包含關于代碼的信息,例如在代碼中定義的類、方法和變量。當編譯用兼容.NET語言編寫代碼時,輸出的代碼為微軟中間語言(即MSIL)的形式。MSIL是由一組指示代碼應該如何執(zhí)行代碼的特定指令組成。MSIL不是為物理CPU開發(fā)的特定指令集。也就是說,它對計算機中的CPU完全不了解,同樣計算機也不了解MSIL。那么.NET應用程序如何執(zhí)行呢?當?shù)谝淮芜\行代碼時,MSIL代碼將被轉換為特定于CPU的代碼,這個過程稱為“即時”編譯或JIT。即時是指在需要時才編譯MSIL代碼。JIT編譯器的主要任務是將一般的MSIL代碼轉換為可由CPU直接執(zhí)行的計算機代碼。總之,CLR的作用除了對代碼進行管理之外,同時要承擔起即時編譯的作用。圖1-4描述了.NET支持語言、CLR、JIT、MSIL和可執(zhí)行代碼之間的關系。圖1-4.NET應用程序執(zhí)行過程1.1.3.NETFramework的類庫的組織

.NETFramework包含了龐大類庫,類庫中的成千上萬個類可能名稱相同或功能相似,如何在邏輯上將這些類進行組織和分類呢?.NETFramework中采用了命名空間(namespace)來將類庫中具有相似功能的類在邏輯上進行分組。程序員通過命名空間可以快速查看和方便地使用該命名空間下的類。命名空間就好比容納相似類物品的容器。例如,一所大學中的人員可以分別屬于不同的院系、部門或班級。這些院系、部門或班級的名稱就是命名空間的名字,它起到的作用就是方便管理教師和學生。命名空間有助于改善數(shù)據(jù)的構成,從而使每個人都可以輕松地獲得想要的數(shù)據(jù)。在.NETFramework中,所有命名空間基本上都是由稱為System的公共命名空間形成的。這就是System命名空間又稱為根命名空間的原因。它實際上就像一個根,所有其他的命名空間都是從根命名空間延伸而形成的。System命名空間包含了定義.NET中使用的公共數(shù)據(jù)類型(包括Int32、Boolean和DateTime)等。此命名空間中包括的另一個重要數(shù)據(jù)類型為“Object”,Object數(shù)據(jù)類型形成了所有其他.NET對象繼承的基本對象。表1-1為System命名空間下的一些最常用的二級命名空間的名字及功能。表1-1System根命名空間下的部分二級命名空間1.2C#?語言的特點

C#語言是從C/C++演變而來的。它是現(xiàn)代、簡單、完全面向對象和類型安全的。如果您是C/C++程序員,學習曲線將會很平坦。許多C#?語句直接借用您所喜愛的語言,包括表達式和操作符。C#?是現(xiàn)代的編程語言。C#?減少了C++的一些特性,不再有宏、模板和多重繼承,使編程更方便,而且具有類型安全、版本控制、垃圾收集(garbagecollect)等功能。所有的這些功能的目的都是開發(fā)面向組件的軟件,因此也把C#?稱為面向組件的語言。

VisualC#(又稱VisualCSharp,簡稱C#)是美國微軟公司推出的Windows操作系統(tǒng)下的應用程序開發(fā)平臺VisualStudio.NET(簡稱VS.NET)家庭中的一員(其它成員包括VisualC++,簡稱VC++;VisualBasic.NET,簡稱VB.NET;VisualJ#,簡稱VJ#等)。

C#是專門為.NET應用而開發(fā)出的語言。它從根本上保證了C#與.NET框架的完美結合。在.NET運行庫的支持下,.NET框架的各種優(yōu)點在C#中表現(xiàn)得淋漓盡致。讀者可以先來看看C#的一些突出的特點,相信在以后的學習過程中,你將會深深地體會到“#”——“SHARP”(鋒利)的真正含義。它具有如下特點:

簡潔的語法。

精心的面向對象設計。

與Web的緊密結合。

完整的安全性與錯誤處理。

版本處理技術。

靈活性與兼容性。

學過Java的讀者可能發(fā)現(xiàn)C#和它非常相似,其實微軟就是為了對抗Sun公司的Java語言而推出C#語言的。我們可以把它們倆看成是表兄弟關系,它們的舅舅都是C++。隨著近五年的發(fā)展,C#已經(jīng)成為軟件開發(fā)領域一門開發(fā)效率高,功能強大,深受廣大程序員喜愛的流行開發(fā)語言。它不僅可以開發(fā)Windows桌面應用程序,也可以開發(fā)Web應用程序。在當今和未來的開發(fā)崗位上,C#程序員將是一個十分熱門的工作崗位。1.3VS?.NET2005集成開發(fā)環(huán)境的介紹要做好.NET應用程序的開發(fā),讀者要先熟練掌握.NET的開發(fā)工具——VisualStudio.NET(簡稱VS.NET),它是微軟.Net平臺上的一個功能強大的、集成多種開發(fā)語言的軟件開發(fā)工具。通過該開發(fā)工具,大多數(shù).Net編程語言都可以實現(xiàn)快速開發(fā)。它作為一款集成開發(fā)環(huán)境,將程序編輯、調(diào)試、測試、打包、部署等操作集成在同一個開發(fā)平臺上,大大提高了程序員的開發(fā)效率。

VisualStudio.NET可用于多種類型的程序開發(fā),包括基于Web的應用程序、XMLWebService、基于Windows的應用程序和移動應用程序等。VisualStudio.NET提供了一系列核心程序設計語言——VB.NET、VC++、VC#和VJ#。它允許這些編程語言共享工具,甚至可以創(chuàng)建由不同編程語言混合在一起的應用程序,從而結束了各種不同的編程語言只能各自使用獨立的程序設計界面的局面。這些編程語言都可以利用?.NETFramework的功能。目前VS.NET開發(fā)平臺的版本有VS.NET2003、VS.NET2005和VS.NET2008測試版。其中VS.NET2005是VisualStudio.NET系列中一個比較新的版本,也是目前最成熟和使用最廣泛的版本。本書將以VS.NET2005為開發(fā)環(huán)境介紹?.NET程序的開發(fā)。

下面先介紹在VS.NET2005開發(fā)環(huán)境中配置C#?的開發(fā)設置。初次運行VS.NET2005將打開“選擇默認環(huán)境設置”對話框,如圖1-5所示。在“選擇默認環(huán)境設置”列表框中選擇“VisualC#?開發(fā)設置”選項,單擊【啟動VisualStudio】按鈕,經(jīng)過配置后打開VisualStudio2005界面。如果在使用的過程中想改變默認環(huán)境設置,則可以執(zhí)行“工具”菜單中的“導入和導出設置”命令,即打開“導入和導出設置向導”對話框,進行必要的設置,從而使集成開發(fā)環(huán)境更適合C#程序的設計。在如圖1-6所示的“歡迎使用‘導入和導出設置向導’”對話框中,選擇“否,僅重置設置,從而改寫我的當前設置”單選項,如圖1-7所示。單擊【下一步】按鈕。在“選擇一個默認設置集合”對話框中的“要重置為哪個設置集合”列表框中,選擇“VisualC#開發(fā)設置”選項,如圖1-8所示。單擊【完成】按鈕,系統(tǒng)重置后,打開向導的“重置完成”對話框,如圖1-9所示。單擊【關閉】按鈕,完成設置。將默認配置設置為“VisualC#開發(fā)設置”后,就可以使用該工具來進行VisualC#程序的開發(fā)了。VisualStudio2005的主界面如圖1-10所示。VisualStudio開發(fā)環(huán)境由許多子窗口作為其組成部分。圖1-5選擇默認環(huán)境設置圖1-6重置所有設置

圖1-7改變當前設置圖1-8選擇默認設置集合

圖1-9完成設置圖1-10VisualStudio2005主窗口1.3.1起始頁在啟動VisualStudio.NET2005后的主區(qū)域,通常會顯示有“起始頁”子窗口。如果該窗口未顯示,可以選擇菜單“視圖”→“其他窗口”→“起始頁”命令,打開該窗口。該窗口有四個區(qū)域:最近的項目、開始、VisualStudio標題新聞和MSDN中文網(wǎng)站。1.最近的項目在“最近的項目”區(qū)域列出了最近創(chuàng)建或打開過的項目列表。該區(qū)域下面的列表默認顯示最近創(chuàng)建或打開的六個項目??梢允褂谩肮ぞ摺辈藛沃械摹斑x項”命令打開“選項”對話框來設置顯示的項目數(shù),最多可以顯示十個最近創(chuàng)建或打開的項目。

在該區(qū)域下方有“打開”與“創(chuàng)建”兩個選項,其后均有“項目”與“網(wǎng)站”兩個超鏈接,“項目”超鏈接用于打開已有項目(包括網(wǎng)站)或創(chuàng)建新的項目,“網(wǎng)站”超鏈接則專門用于打開或創(chuàng)建Web應用程序。通過該區(qū)域,我們可以快速打開我們經(jīng)常訪問的項目。2.聯(lián)機資源起始頁的其他三個區(qū)域為聯(lián)機資源超鏈接區(qū)域,包括“開始”、“VisualStudio標題新聞”、“MSDN中文網(wǎng)站”,主要用于查找VisualStudio資源。如果安裝了MSDN(MicrosoftDeveloperNetwork)并且已連接到因特網(wǎng),則可以通過這三個區(qū)域來查找本機和因特網(wǎng)上的VisualStudio資源。

例如,單擊“開始”區(qū)域的“C#2005的新增功能”超鏈接,將打開VisualStudio的幫助窗口,顯示本機MSDN中的VisualC#2005中的新增功能,如圖1-11所示。單擊“開始”區(qū)域中的“連接社區(qū)”超鏈接,將在幫助窗口打開因特網(wǎng)上MSDN的VisualStudio資源,如圖1-12所示。在“VisualStudio標題新聞”區(qū)域,可以查看微軟最新的一些新聞。在“MSDN中文網(wǎng)站”區(qū)域,可以直接通過互聯(lián)網(wǎng)連接到微軟的MSDN站點來獲取最新的一些技術信息。圖1-11本機的MSDN資源

圖1-12因特網(wǎng)的MSDN資源1.3.2設計器視圖與代碼視圖了解起始頁后,我們就可以開始創(chuàng)建一個項目了。單擊“文件”菜單,選擇“新建”→“項目”,彈出如圖1-13所示的新建項目對話框。在該對話框中,可以選擇我們要創(chuàng)建的項目類型模板。通過該對話框可以看到,VS.NET2005開發(fā)平臺支持C#、VB、J#、C++等語言的開發(fā),支持多種項目類型的開發(fā)。我們以VisualC#項目類型為例,先在左邊列表中選擇Windows項目類型,然后在右邊的模板列表中選擇“Windows應用程序”,輸入要創(chuàng)建的項目名稱和保存位置后,點擊【確定】按鈕就可以創(chuàng)建一個Windows應用程序的項目了,如圖1-14所示。圖1-13新建項目對話框圖1-14項目設計器視圖

在新建的Windows應用程序項目模版中,會自動創(chuàng)建一個窗體Form1。在VS.NET中通常有兩種視圖:設計器視圖與代碼視圖,它們是程序員進行項目開發(fā)最常用的兩種模式。設計器視圖用來設計Windows窗體或Web窗體,可以做到所見即所得。在設計器視圖中設置的一些窗體控件,通常會在代碼視圖中產(chǎn)生相應的代碼;在代碼視圖中程序員主要用來編寫源代碼,實現(xiàn)項目的功能。創(chuàng)建Windows或Web應用程序時,系統(tǒng)將默認打開設計器視圖。在設計器視圖中可以為Windows或Web界面添加控件。雙擊設計器視圖中的窗體,將打開代碼視圖,代碼視圖與設計器視圖共享一個屏幕區(qū)域,通過窗口上部的標簽進行切換,如圖1-15所示,可以通過“Form1.cs”和“Form1.cs[設計]”兩個標簽來切換設計器視圖和代碼視圖。代碼視圖實質上是一個純文本編輯器,在該視圖中可以進行通常的文本編輯操作,如選定、復制、移動、撤銷、恢復等。新建一個項目,在代碼視圖中通常會生成一些代碼模板。打開已有的Windows或Web項目時,其顯示方式由上一次項目時的狀態(tài)確定,如果關閉時是設計器視圖,則打開的仍是設計器視圖;如果關閉時是代碼視圖,則打開的仍是代碼視圖;如果都沒有打開,則兩種視圖均不顯示。除了設計器視圖和代碼視圖,在“視圖”菜單中常用的視圖或子窗口還有類視圖、解決方案資源管理器窗口、屬性子窗口等??梢酝ㄟ^該菜單來切換不同的視圖或窗口。圖1-15代碼視圖1.3.3解決方案資源管理器為了方便管理項目及項目中的各類文件,在VS.NET2005開發(fā)環(huán)境中采用“解決方案資源管理器”子窗口來管理項目和項目中的文件。使用VS.NET2005開發(fā)的應用程序通常稱為解決方案,每一個解決方案可以包含一個或多個項目。一個項目通常是一個完整的程序模塊,一個項目可以有多個文件項。在VS.NET2005開發(fā)環(huán)境右上角的“解決方案資源管理器”子窗口中顯示了解決方案的樹型結構,如圖1-16所示。在該管理器中可以瀏覽組成解決方案的所有項目和每個項目中的文件,可以對解決方案的各元素進行組織和編輯。雙擊某個項目中的文件將打開相應的視圖,對該文件進行編輯。例如在圖1-16中,雙擊“Form1.cs”窗體文件默認將打開設計器視圖,雙擊代碼文件“Program.cs”將打開代碼視圖。另外,如果選擇了某一文件,在“解決方案資源管理器”的左上方將動態(tài)地出現(xiàn)相應的打開該文件的按鈕,單擊該按鈕也可以打開選擇的文件。如選擇窗體文件后,將出現(xiàn)設計器視圖按鈕與代碼視圖按鈕,單擊相應按鈕將打開相應的視圖。如果選擇的是代碼文件,將只顯示代碼視圖按鈕。在“解決方案資源管理器”中,可以使用鼠標的右鍵操作。例如,右鍵單擊“解決方案資源管理器”中的“引用”項,可以選擇“添加引用”或“添加Web引用”的操作,如圖1-17所示。圖1-16解決方案資源管理器

圖1-17右鍵操作

當一個解決方案包含多個項目時,其中必須且只能有一個項目作為默認的啟動項目,該項目是解決方案的入口。啟動項目的名稱將以粗體顯示。如果要啟動哪一個項目,可以先選中該項目,在其上擊右鍵后在彈出菜單中可以選擇“設為啟動項目”即可。1.3.4屬性窗口“屬性”子窗口用于設置解決方案中各個子項的屬性,當選擇設計器視圖、解決方案資源管理器、類視圖中的某一子項時,“屬性”子窗口將以兩列表格的形式顯示該子項的所有屬性,如圖1-18所示。圖1-18屬性列表

在窗口的上部有一下拉列表框,顯示當前選定的對象名稱及所屬類型。單擊該列表框的下拉按鈕,可從打開的列表中選擇其他對象。例如,選擇的如果是窗體中的控件對象,在設計器窗口中,被選擇的對象會自動處于選定狀態(tài),原來選定的對象將被取消。在表格中左列是屬性名稱列表,右列對應各屬性名稱的屬性值。選擇某一名稱,可以在右列修改該屬性值。屬性默認按字母順序排列,單擊窗口中的字母排序按鈕與分類排序按鈕,可以在兩種排序方式之間進行切換。

選擇設計器視圖中的窗體或窗體中的控件,在“屬性”子窗口中將顯示事件按鈕,單擊該按鈕,窗口將顯示被選擇窗體或控件的事件列表,如圖1-19所示。雙擊某一事件名稱,將打開代碼視圖,并添加該事件方法的聲明。在該聲明中我們可以編寫相應的代碼來響應發(fā)生事件時要實現(xiàn)的功能。屬性與事件窗口的下部有一個屬性或事件功能說明區(qū)域,當選擇某一屬性或事件時,說明區(qū)域將顯示文字說明屬性或事件的作用,這對初學者很有用。如果該區(qū)域沒有顯示,可將鼠標指向窗口列表框下部邊框,當鼠標變?yōu)殡p向箭頭時,向上拖動鼠標,該區(qū)域即可顯示,如圖1-19所示。在圖1-18和圖1-19中分別顯示了按鈕“button2”的屬性和事件列表。

圖1-19事件列表1.3.5工具箱默認狀態(tài)下,“工具箱”處于隱藏狀態(tài),位于窗口的左邊框。當鼠標指向“工具箱”時,將顯示相應窗口,如圖1-20所示。如果沒有出現(xiàn)或被關閉,可以從“視圖”菜單中選擇“工具箱”命令,即可將其顯示在主窗口的左邊?!肮ぞ呦洹庇糜谙騑indows應用程序或Web應用程序添加控件?!肮ぞ呦洹笔褂眠x項卡分類管理其中的控件,打開“工具箱”將顯示VisualStudio項目中使用的各個不同的控件列表。根據(jù)當前正在使用的設計器或編輯器,“工具箱”中可用的選項卡和控件會有所變化。圖1-21是Windows應用程序窗體設計器狀態(tài)下的工具箱。圖1-20工具箱

圖1-21設計器狀態(tài)下的工具箱VisualStudio2005將控件放在不同的選項卡中,各選項卡以“+”號表示折疊狀態(tài),以“-”號表示展開。其中,“所有Windows窗體”包含了其下各選項卡中的所有控件??丶悦Q的字母順序排列,以便于用戶選擇。可以從“工具箱”中選擇控件并將其拖動到窗體設計器中,還可以將某一代碼片斷拖回到“工具箱”中,以便將來重新使用。例如,可以將“按鈕”(Button)控件從“公共控件”選項卡中拖放到Windows應用程序的設計器視圖,即添加控件;或從一個編輯器中選擇并拖出一個代碼片段,然后將其存儲在“工具箱”中,以便將來重復使用。如果選擇了“工具箱”中的某一項后,想撤銷選擇,可單擊控件列表中“指針”控件。工具箱中控件的使用將在本書后面部分詳細講解。1.3.6子窗口的操作在VisualStudio集成環(huán)境中,有兩類子窗口,一類是在主區(qū)域顯示的窗口,例如起始頁、代碼視圖、設計器視圖窗口等;一類是在主區(qū)域周圍顯示的子窗口,如工具箱、解決方案資源管理器、類視圖、屬性、動態(tài)幫助、輸出、任務列表等。在主區(qū)域顯示的窗口,如果不止一個,則諸多窗口將以選項卡的形式疊放在一起,在最前端顯示的為當前活動窗口??梢酝ㄟ^選項卡的標簽切換各個窗口,在窗口的右上角有一個【關閉】按鈕,用于關閉窗口。關閉按鈕只對當前活動窗口有效。要關閉某一窗口,首先要使該窗口成為當前活動窗口,然后單擊【關閉】按鈕即可。

在主區(qū)域周圍的窗口也是由若干窗口共享某一屏幕區(qū)域,以選項卡的形式疊放在一起,通過標簽進行切換。這些窗口的標題欄右部都有兩個操作按鈕,一個是關閉按鈕,另一個是圖釘按鈕。關閉按鈕用于關閉窗口,而圖釘按鈕則用于決定窗口的隱藏與顯示狀態(tài),在顯示狀態(tài)時又可以有??匡@示與浮動顯示兩種方式。當圖釘按鈕為橫向時,窗口為隱藏狀態(tài),這時窗口以標簽形式顯示在VisualStudio的左、右、下邊框上。這時用鼠標指向標簽,則窗口顯示,鼠標移出窗口,則窗口又重新隱藏。隱藏狀態(tài)的主要作用是為主區(qū)域的窗口開辟盡可能大的屏幕空間。

當圖釘按鈕為縱向時,窗口為顯示狀態(tài),默認為??糠绞?,即窗口附著在VisualStudio的左、右、下邊框上。這時鼠標指向窗口的標題欄,拖動鼠標,使窗口離開邊框,窗口即為浮動顯示方式,這時標題欄上的圖釘按鈕將消失。如果使浮動方式變?yōu)橥?糠绞?,只需拖放窗口至VisualStudio的邊框上即可。1.4實例:創(chuàng)建.NET應用程序在本節(jié)中,我們創(chuàng)建的.NET應用程序有兩種:一種是控制臺應用程序(以命令行形式運行),一種是Windows應用程序(有圖形界面的應用程序)。下面將分別演示快速創(chuàng)建這兩種程序的過程。

1.創(chuàng)建控制臺應用程序功能:在控制臺上打印一句話。步驟:

(1)啟動VS2005,選擇“文件”菜單→“新建”→“項目”,彈出“新建項目”對話框,如圖1-22所示。圖1-22選擇項目類型對話框(2)在新建項目對話框中選擇VisualC#項目類型下的Windows項目類型。

(3)在右邊列表框中選擇控制臺應用程序。然后輸入項目的名稱“FirstProgram”和保存的位置后,點擊【確定】按鈕。

(4)在生成的代碼模板的Main方法中添加以下加粗的代碼:

//在該程序中要使用的命名空間

usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespaceFirstProgram{classProgram{//程序的主入口

staticvoidMain(string[]args){//在控制臺輸出字符串

Console.WriteLine("ThisismyfirstC#programming!");}}}(5)運行程序:選擇“調(diào)試”菜單下的“開始執(zhí)行(不調(diào)試)”命令。運行結果如圖1-23所示。圖1-23運行結果

代碼說明:

(1)?C#是面向對象的,故其程序是由類組成的。如果該類要使用類庫中的類,可以使用using命令將其導入到該程序中。using后面的字符串就是命名空間的名字。

(2)?C#程序中的類可以被包含在一個新的命名空間中。比如本例中的Program類被包含在FirsProgram命名空間中。命名空間的名字可以根據(jù)需要而定。

(3)?Main()方法是C#程序的主入口,程序首先從這里開始運行。

(4)?Cosnole是C#?中的控制臺類,WriteLine是該類的方法,其功能是在控制臺輸出該函數(shù)括號中的內(nèi)容。2.創(chuàng)建Windows應用程序功能:點擊按鈕,改變窗體的背景色。步驟:

(1)啟動VS2005,選擇“文件”→“新建”→“項目”,彈出“新建項目”對話框,如圖1-23所示。

(2)在“新建項目”對話框中選擇VisualC#項目類型下的Windows項目類型。

(3)在右邊列表框中選擇Windows應用程序,然后輸入該項目的名稱“WindowsApplication1”和保存的位置后,點擊【確定】按鈕。

(4)激活“工具箱”。點擊“視圖”菜單選擇“工具箱”命令。在工具箱中拖取按鈕button至窗體Form1上。并通過屬性窗口,修改該按鈕的“Text”屬性為“點擊我,改變顏色”。設置完后如圖1-24所示。圖1-24程序界面(5)雙擊該按鈕,進入代碼視圖。默認的代碼Form1.cs如下。在button1_Click事件處理過程中添加如下加粗的代碼。

//在該程序中要使用的命名空間

usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceWindowsApplication1 //本程序所屬的命名空間{publicpartialclassForm1:Form//創(chuàng)建的新類

{publicForm1() //構造函數(shù),初始化窗體

{InitializeComponent();}//單擊按鈕時要執(zhí)行的事件處理過程

privatevoidbutton1_Click(objectsender,EventArgse){//this代表當前窗體,將當前窗體的背景色變?yōu)楹谏?/p>

this.BackColor=Color.Black;}

}}(6)運行程序:選擇“調(diào)試”菜單下的“開始執(zhí)行(不調(diào)試)”命令。運行結果如圖1-25所示。當點擊按鈕后,運行效果如圖1-26所示。

圖1-25運行界面

圖1-26點擊按鈕后的界面1.5VS?.NET2005幫助系統(tǒng)程序員在學習開發(fā)過程中,一個很重要的方面就是使用幫助系統(tǒng)來為自己答疑解惑。在VisualStudio的集成環(huán)境中,可以使用動態(tài)幫助、智能感知和MSDN(MicrosoftDevelopperNetWork微軟開發(fā)商網(wǎng)絡,里面包含了微軟龐大的開發(fā)資源)資源等多種幫助形式。1.5.1動態(tài)幫助動態(tài)幫助與解決方案資源管理器共享一個屏幕區(qū)域??梢詮摹皫椭辈藛沃羞x擇“動態(tài)幫助”命令,將該窗口在屏幕上顯示出來。它對用戶當前操作提供相關的幫助主題列表。當用戶在VisualStudio環(huán)境中進行某一項操作時,“動態(tài)幫助”將搜索MSDN庫,查找與該操作相關的幫助主題,以超鏈接的形式顯示在動態(tài)幫助窗口,并把它認為可能最有用的主題列在第一位。單擊一個主題鏈接后,此主題將會顯示在VisualStudio的幫助窗口中。例如,當在設計器窗口中選擇一個按鈕控件時,“動態(tài)幫助”顯示的幫助主題內(nèi)容如圖1-27所示;當在代碼窗口中選擇關鍵字“new”時,“動態(tài)幫助”窗口會顯示被選定的關鍵字“new”的幫助主題,如圖1-28所示。圖1-27選擇按鈕控件后的動態(tài)幫助

圖1-28選擇關鍵字“new”后的動態(tài)幫助1.5.2智能感知在代碼編寫的過程中,VisualStudio提供了“智能感知”的幫助方式,利用這種幫助方式不僅可以節(jié)省輸入的時間,更重要的是避免了用戶的輸入錯誤。C#提供了多種智能感知的方式。

1.提示類名或對象名在設計代碼的過程中,當輸入類名或對象名時,VisualStudio會動態(tài)地提供當前可用的類及對象列表,如果選擇某一列表項,則動態(tài)地顯示該項的簡要說明,如圖1-29所示。使用者可以通過鼠標雙擊所選擇項完成自動輸入,也可以用鍵盤的上下方向鍵選擇所需項然后按Enter鍵,如果在輸入的過程中自動選擇了所需項,則可以直接按Enter鍵。這樣可以避免輸入錯誤,特別是大小寫錯誤。圖1-29提示類名或對象名2.提示類成員或對象成員在完成類名或對象名輸入后,當通過點運算符訪問類或對象成員時,VisualStudio將動態(tài)地顯示類成員或對象成員列表框,可以通過鼠標或鍵盤選擇這些成員。例如,當完成消息框類(MessageBox)輸入后,再輸入“.”時,則動態(tài)地顯示該類所具有的三個靜態(tài)成員,如圖1-30所示。

3.提示方法的使用說明當使用類的靜態(tài)方法或成員方法時,VisualStudio動態(tài)地顯示該方法的功能、不同用法(重載)及每種用法的參數(shù)說明。例如,當使用消息框的Show()方法時,顯示該方法的功能是“要在消息框中顯示的文本”,有21種不同的用法,這時單擊框中的向上或向下按鈕,可依次顯示每一種具體的用法,其中第一種用法的參數(shù)為一個字符串,如圖1-31所示。圖1-30顯示成員列表圖1-31顯示方法用法4.實例化提示當使用new關鍵字對對象進行實例化時,VisualStudio會自動提供對對象類型的選擇。例如,當為一個整型數(shù)組實例化時,將自動選擇int類型,如圖1-32所示。

注意:讀者在VisualStudio環(huán)境中編寫代碼時,一定要充分利用該系統(tǒng)的智能感知效果。如果所寫的類名或對象名在輸入“.”后沒有列出它包含的成員,則意味著所寫的類或對象名出錯。圖1-32實例化提示1.5.3MSDN幫助

MSDN可以隨同VisualStudio一同安裝,也可以單獨安裝。MSDN庫提供了多種形式的幫助??梢栽赩isualStudio集成環(huán)境中,選擇“幫助”菜單中的相關命令來啟動MSDN使用幫助,也可以直接啟動MSDN使用幫助,啟動MSDN將打開MSDN窗口,如圖1-33所示。

MSDN幫助窗口由兩個區(qū)域組成,左邊的區(qū)域為導航區(qū),右邊的區(qū)域為幫助內(nèi)容顯示區(qū)。導航區(qū)域下部有“目錄”、“索引”與“幫助收藏夾”三個標簽,用于選擇不同的幫助方式。在顯示區(qū)域有一個獨立存在的“搜索”選項卡用于搜索幫助內(nèi)容。圖1-33MSDN窗口1.目錄“目錄”分類組織幫助內(nèi)容,如果要系統(tǒng)瀏覽幫助內(nèi)容,可以使用這種幫助方式?!澳夸洝眳^(qū)上方有一個“篩選依據(jù)”下拉列表框,用于縮小目錄列表的范圍,“目錄”區(qū)主體顯示幫助的目錄列表,單擊某標題左邊的“+”號將展開該類內(nèi)容下一層標題列表,同時“+”號變?yōu)椤?”號,單擊“-”號,將折疊該類下層標題列表。選擇某項標題,在內(nèi)容顯示區(qū)顯示具體內(nèi)容。例如,要瀏覽C#語言教程的內(nèi)容,可以在“篩選依據(jù)”中選擇“VisualC#”,在目錄區(qū)單擊“開發(fā)工具和語言”左邊的“+”號,在展開的下層標題列表中單擊“VisualStudio文檔”左邊的“+”號,單擊“VisualC#”左邊的“+”號,選擇“VisualC#入門”,在內(nèi)容顯示區(qū)將顯示有關C#入門的說明及各項內(nèi)容鏈接。2.索引“索引”以字符順序組織幫助內(nèi)容,如果有明確的幫助標題,可以使用這種幫助方式。例如,要瀏覽有關按鈕控件的幫助內(nèi)容,可以在列表中按字符順序快速找到Button控件標題。

3.幫助收藏夾“幫助收藏夾”用于存放經(jīng)常要瀏覽的幫助內(nèi)容標題。當某一幫助標題內(nèi)容被顯示后,在顯示區(qū)域上部的“URL”欄中單擊鼠標,選中該欄中的內(nèi)容,單擊工具欄中的【添加到幫助收藏夾】按鈕,這時該按鈕變?yōu)榭捎?,再次用鼠標單擊該按鈕,當前選擇的幫助標題即被添加到“幫助收藏夾”中。打開“幫助收藏夾”,選擇被收藏的幫助名稱,幫助內(nèi)容被顯示。選中“幫助收藏夾”中的收藏標題,單擊【重命名】按鈕,可以修改收藏標題。單擊【刪除】按鈕,可以刪除選中的收藏標題。

4.搜索以關鍵字的方式搜尋相關幫助內(nèi)容,在“搜索”下拉組合框中輸入要查找內(nèi)容的關鍵字,單擊【搜索】按鈕,將列出包含關鍵字內(nèi)容的幫助標題及簡要說明,雙擊某一標題,將顯示該標題的幫助內(nèi)容。本章小結

.NET平臺是微軟推出的第三代互聯(lián)網(wǎng)平臺,其核心是

.NETFramework。

.NETFramework包含兩個主要組件:公共語言運行時(CommonLanguageRuntime,CLR)和統(tǒng)一的類庫集。

當編譯用兼容

.NET的任何語言編寫的代碼時,輸出的代碼為微軟中間語言(即MSIL)的形式。MSIL是由一組指示應該如何執(zhí)行代碼的特定指令組成的。

類庫中的類采用命名空間(namespace)來組織。

C#語言是一門完全面向對象的功能強大的語言,它也是.NET開發(fā)的核心語言,來自C++,與Java類似。

?VS?.NET2005是一個集代碼編寫、程序調(diào)試、測試、打包、安裝等為一體的高效開發(fā)環(huán)境。

VS?.NET2005提供了動態(tài)幫助、智能感知和MSDN三種幫助方式。練習與作業(yè)選擇題:

1.()包含的基類用于在開發(fā)應用程序時提供各種服務和對象。

A..NETFramework類庫B.CLRC.CTS D.MSIL2.()由一組指示應該如何執(zhí)行代碼的特定指令組成。

A.JIT編譯器 B.MSILC.CLS D.SILM3.()命名空間在?.NETFramework中又稱為根命名空間。A.System.IO B.SystemC.System.ThreadingD.System.Data4..NET中所有代碼都由()管理,因此又稱為“托管代碼”。

A.MSIL B.JIT編譯器

C.CLR D.CRL5.()允許用戶自定義VisualStudio.NET2005IDE。

A.動態(tài)幫助 B.工具箱

C.解決方案資源管理器 D.起始頁

6.()是一組相關的文件,這些文件可以編譯成一個應用程序。

A.項目 B.類文件

C.App.ico文件 D.AssemblyInfo.cs文件7.()窗口可用于瀏覽解決方案中的文件。

A.解決方案資源管理器B.動態(tài)幫助

C.屬性 D.工具箱

8.將光標置于()窗口的某一項時,它將立即顯示與之相關的文章。

A.解決方案資源管理器B.動態(tài)幫助

C.屬性 D.工具箱

9.所有程序集信息都放置在()文件中。

A.bin B.類

C.App.ico D.AssemblyInfo.cs10.VisualStudio.NET中的()按鈕可為窗口啟用和禁用自動隱藏功能。

A.命令 B.最小化

C.圖釘 D.最大化

11.參照圖1-34,在C#環(huán)境中設計程序界面,掌握控件工具箱和屬性窗口的基本使用方法。要求所有文字使用宋體,5號字窗口標題欄文字為“程序界面設計”。設計時應注意界面的比例及各控件的排列對齊,注意使用“格式”菜單中的相應命令或布局工具欄中的相應按鈕。本題僅要求界面設計不要求功能實現(xiàn)。圖1-34程序界面設計上機部分(一)

實訓目標

1.熟悉VisualStudio.NET2005的功能。

2.使用VisualStudio.NET2005制作簡單的應用程序界面。

3.在VisualStudio.NET2005環(huán)境下使用C#?編寫簡單的程序。第一部分:指導■練習1:編寫控制臺應用程序實現(xiàn)枚舉和SwitchCase結構問題:編寫一個Engineers的枚舉,然后引用這個枚舉。

分析:在此問題中,首先需要定義一組不同類型的工程師。為此,可通過以下方式創(chuàng)建枚舉。

enumEngineers{Software,Mechanical,Electronics}

然后,可以使用Switch結構,根據(jù)傳遞到此Switch結構的枚舉成員來決定要顯示的信息。實現(xiàn)步驟:

(1)為解決方案創(chuàng)建一個基于控制臺的項目“Example3”。

(2)將“Class1.cs”類文件重命名為“EnumDemo.cs”。(3)將以下代碼添加到“EnumDemo.cs”中。

namespaceExample3{enumEngineers{Sotware,Mechanical,Electronics}classEnumDemo{staticvoidMain(string[]args){Engineersengineers=Engineers.Mechanical;switch(engineers){caseEngineers.Sotware:Console.WriteLine("您是軟件工程師");break;caseEngineers.Mechanical:Console.WriteLine("您是機械工程師");break;caseEngineers.Electronics:Console.WriteLine("您是電子工程師");break;default:break;}Console.ReadLine();}}(4)選擇“生成”→“生成解決方案”選項,以生成此項目。

(5)選擇“調(diào)試”→

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論