找軟件用軟件,就到華軍軟件園! 軟件發(fā)布
所在位置: 首頁 — 教程攻略 — 教程 — 其他教程  —  Win10開發(fā)...

Win10開發(fā)入門:UWP通用應用程序項目結構分析

作者: 日期:2022-04-08

驅動精靈win10版
驅動精靈win10版-9.61.3708.3054 官方標準版

硬件工具 占存:78.3MB 時間:2020-10-26

軟件介紹: 驅動精靈是一款集驅動自動升級、驅動備份、驅動還原、驅動卸載、硬件檢測等多功能于一身的專業(yè)驅...

立即下載

今天的任務是建立一個簡單的Win10 UWP應用程序,分析應用程序組成結構,順帶熟悉一下Visual Studio 2015開發(fā)環(huán)境,并通過添加一個按鈕初識Windows應用程序事件響應機制。在開始本文之前先回答兩個網友提出的問題。

1、開發(fā)UWP應用Visual Studio需要安裝哪些組件?

保證選中Windows通用應用開發(fā)即可。如下圖所示:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

▲Visual Studio 2015安裝界面

另外,最新版SDK并不包含在Visual Studio安裝包中,安裝時需要在線下載。你可以取消勾選工具(1.2)和Windows 10 SDK(10.0.10586),完成安裝后,再從這里下載SDK獨立安裝包進行安裝。

2、關于Hyper-V虛擬機支持條件的補充

CPU是否支持虛擬化技術可通過一款軟件進行判斷,詳細方法可參考《Windows7下XP Mode下載、安裝、設置完全圖解》。另外除CPU需要支持虛擬化技術外,還需要使用Windows10專業(yè)版及更高版本操作系統(tǒng)。

創(chuàng)建第一個Win10 UWP應用程序

打開Visual Studio 2015,點擊菜單文件——新建——項目,彈出“新建項目”對話框,如下圖所示:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

▲Visual Studio 2015新建項目對話框

在模板中選擇Visual C#——Windows——通用,在右側選擇空白應用(通用Windows),修改名稱為Hello或其他,最后點擊確定即可生成一個空白的UWP通用應用。此時的界面如下圖所示:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

▲Visual Studio 2015操作界面

界面頂部為菜單欄和常用操作按鈕,最右側為解決方案資源管理器窗格,其中列出了項目中的所有文件,雙擊文件后會在左側窗格打開,方便我們編輯和修改。右下角為屬性窗格,其中顯示的是我們當前選中目標的屬性選項。左下角窗格則用于調試,代碼中的錯誤也會在這里給出提示。

項目文件結構分析

查看解決方案資源管理器窗格,一個新建的UWP應用程序包含如下文件:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

▲Visual Studio 2015解決方案資源管理器窗格

? Properties,描述項目屬性,雙擊可打開項目屬性窗口進行修改;

? 引用,所有應用中需要使用的API都需要在這里進行引用,項目默認會把UWP應用所需的通用于所有設備的API都引用進來;

? Assets,存放應用程序所需的圖片、音視頻文件等資源文件;

? Packages.appxmanifest,應用程序清單文件,用于描述應用程序的功能和版本等信息的文件。

下面兩項則是應用中最重要的兩個部分,也是我們主要操作的對象:

? App.xaml與App.xaml.cs

? MainPage.xaml與MainPage.xaml.cs

在項目中他們分別定義了兩個類,即應用程序類(App)和主頁面類(MainPage)。

這是一個類(對象)組成的世界

類是面向對象編程中一個非常重要的概念,它是從現(xiàn)實世界中獲得的靈感。比如人類,我們會用一些屬性(比如職業(yè))或方法(比如具備的技能)對其進行定義,然后根據(jù)定義產生每一個個體。在編程中也是同樣的道理,所有事物都通過類進行定義,而每個具體的事物都是根據(jù)類的定義產生的個體,這叫做類的實例化對象。

在面向對象程序設計中,我們需要各種不同的對象來完成不同的任務,還需要協(xié)調各個對象之間的關系,并根據(jù)自己的需求增加額外的類(對象)。

在我們當前的項目中App.xaml與App.xaml.cs定義了應用程序類,它負責維護應用程序的生命周期,明確在應用程序打開、掛起(從當前切換到另一個應用后)以及掛起后恢復的情況下需要執(zhí)行哪些操作等。

MainPage.xaml與MainPage.xaml.cs則定義了應用程序的主頁面類,前者負責描述頁面中包含哪些內容,后者主要包括頁面內容與用戶之間的交互邏輯。下面我們在新建的空白應用程序中添加一些內容。

初識事件!

我們常用的Windows應用程序都主要以事件進行驅動的,比如點擊一個按鈕會觸發(fā)按鈕的單擊事件。我們需要做的就是將要執(zhí)行的操作放在對應事件的響應函數(shù)中即可,下面我們在主頁面中添加一個按鈕,實現(xiàn)點擊按鈕后彈出Hello World!提示對話框。

雙擊MainPage.xaml,相應的頁面設計器就會出現(xiàn)在左側窗格中,如下圖所示:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

▲Visual Studio 2015 XAML頁面設計視圖

點擊左側的工具箱,將其中的Button拖到主頁面區(qū)域中即可完成一個按鈕的添加,如下圖:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

選中添加的按鈕,在右下角的屬性窗格中就會出現(xiàn)按鈕的屬性設置選項,點擊小窗格中右上角的閃電圖形圖標即可顯示所有事件列表:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

找到其中的click項,在右側文本框中輸入函數(shù)名稱(自定義或留空使用默認名稱),雙擊文本框即可為此按鈕添加單擊事件響應函數(shù),并自動進入函數(shù)編輯頁面(即MainPage.xaml.cs文件編輯頁面)。

此時按照下面的代碼在函數(shù)體(一對大括號內)添加代碼,并注意在函數(shù)名稱前面加上async修飾符。

private async void button_Click(object sender, RoutedEventArgs e)

{

MessageDialog dlg = new MessageDialog("Hello World!");

await dlg.ShowAsync();

}

在復雜項目中我們需要很多類,而這些類可能由不同的人進行編寫,為了不至于產生沖突,使用命名空間進行“分類”。由于我們使用的MessageDialog(消息對話框)類被定義在Windows.UI.Popups命名空間中,因此要使用該類,需要在代碼文件的最上面部分加上下面一行代碼:

using Windows.UI.Popups;

Win10開發(fā)入門:UWP通用應用程序項目結構分析

▲為按鈕添加單擊事件響應函數(shù)后最終代碼

至此我們已經完成了按鈕及其單擊事件處理函數(shù)的添加,點擊窗口頂部工具欄中的綠色播放按鈕即可進行編譯運行,運行后主界面彈出,點擊窗口中的按鈕即可彈出Hello World!提示對話框,如下圖所示:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

程序的入口點在哪里?

下面我們進一步分析,學習過C++等語言的朋友都知道應用程序都有一個入口點,那么這里的UWP應用程序也不例外。實際上在本文所建立的應用程序中還存在另一個類,所謂的入口點就隱藏在這里,下面我們把它揪出來。

點擊菜單中的視圖——類視圖,此時在右側即可出現(xiàn)類視圖,展開Hello(命名空間)你就會看到除了App、MainPage類之外,還有一個Program類,如下圖所示:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

雙擊Program類,會在左側打開名為App.g.i.cs的文件(它是隱藏的,由編譯器自動生成),部分代碼如下圖所示:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

可以看到在Program類中包含一個名為Main()的方法,這即是整個應用程序的入口點函數(shù)。在前面我們介紹過類的實例化概念,只有類被實例化為對象后才具有意義。不過這里的Program類是一個靜態(tài)類(前面用static進行了修飾),靜態(tài)類的特點是不需要實例化為對象就可以使用其中定義的各種方法(當然也都是靜態(tài)的),那么Main()函數(shù)就可以直接運行。

各個類或對象之間的關系

繼續(xù)觀察Main()函數(shù)中的語句,可以發(fā)現(xiàn)它實例化了一個App類的對象(new APP();),這也是整個應用中唯一的一個App類實例化對象。有了App對象,那么程序頁面又是怎樣呈現(xiàn)的呢?(即MainPage類是如何發(fā)揮作用的呢?)

實際上在UWP應用App對象中包含一個Window對象,它提供了對窗口的各種操作方法。在應用程序啟動時,又會將一個Frame對象賦給Window對象(的Content屬性)。在應用程序中除了MainPage主頁面外,我們還可以添加其他自定義頁面,而Frame的作用就包括讓應用程序窗口內容在不同頁面之間進行導航。Windows類和Frame類的定義包含在我們引用的程序集中,因此在應用程序的類視圖中并沒有顯示這兩個類。以上類或對象之間的關系在App類的OnLaunched方法中有所體現(xiàn),OnLaunched方法即表示應用程序啟動時需要完成的一系列動作,主要代碼(在App.xaml.cs文件中)如下:

Win10開發(fā)入門:UWP通用應用程序項目結構分析

以上就是對UWP應用程序結構的簡單分析,如果你沒有C#語言基礎,看不懂代碼不要緊,現(xiàn)在你只需要對整個結構有一個整體了解。下次我們將對C#語言的基礎要點進行學習。

相關文章

最新教程 更多

谷歌瀏覽器(Google Chrome)下載網頁視頻的圖文操作內容 谷歌瀏覽器(Google Chrome)下載網頁視頻的圖文操作內容

電腦定時關機怎么設置?-電腦定時關機設置教程 電腦定時關機怎么設置?-電腦定時關機設置教程

華為純凈模式怎么關閉?-華為純凈模式關閉教程 華為純凈模式怎么關閉?-華為純凈模式關閉教程

電腦配置怎么看?-電腦配置查看教程 電腦配置怎么看?-電腦配置查看教程

蘋果手機突然黑屏打不開怎么辦?-蘋果手機突然黑屏打不開教程 蘋果手機突然黑屏打不開怎么辦?-蘋果手機突然黑屏打不開教程

熱門教程 更多

圖片工廠形狀圖層重命名的詳細步驟 圖片工廠形狀圖層重命名的詳細步驟

小米怎么退出安全模式?-小米退出安全模式方法 小米怎么退出安全模式?-小米退出安全模式方法

小米手機助手怎么使用?-小米手機助手使用教程 小米手機助手怎么使用?-小米手機助手使用教程

小米怎么強制重啟手機?-小米強制重啟手機方法 小米怎么強制重啟手機?-小米強制重啟手機方法

電腦定時關機怎么設置?-電腦定時關機設置教程 電腦定時關機怎么設置?-電腦定時關機設置教程