Windows Phone 7 - 工程結構
像學習Android 一樣也必須先把Windows Phone 7的工程結構了解清楚才好,Windows Phone 7的項目結構以一個最標準的WP7應用為例,截圖如下:
把其中一些對應的文件展開如下:
下面一起來了解一下對應文件的作用和用法。
1.Properties
- AppManifest.xml
翻譯成中文為應用列表,當我們的WP應用開發完成后,會打包并發布,而此文件的作用是把我們需要布署和發布的所有文件列表列出來,這個跟Android 的Manifest 是不大相同的,Android 的manifest 雖然也可以理解成列表,但Andriod 必須自己手動添加需要的應用權限、服務、廣播等。而這個文件最好是不要動它為好。文件內容如下:
- AssemblyInfo.cs
做過Winform 或者 Asp.net 肯定對這個不陌生,這里不做過多介紹。
- WMAppManifest.xml
看名稱,好像是跟Windows Mobile 有一點關系 ,此文件包含了Windows Phone 7 的一些特殊屬性,可以定義它的可用能力,讓它支持比如游戲服務、本地化、網絡鏈接、瀏覽器等功能,還可以定義應用程序的圖片等。文件內容如下:
Tip:此文件不要改動。 其中Tasks是設置應用啟動的第一個頁面,跟Android 的?manifest?Launcher 差不多。
2.References
此文件為引用目錄,默認引用Windows Phone 開發框架DLL,還可以引入我們做好的類庫文件等,增強項目的功能擴展。
3.圖片文件
- ApplicationIcon.png
這個圖片是主頁面列表需要的圖標,默認如下:
- Background.png
這個圖片是應用程序的背景圖,默認如下:
- SplashScreenImage.jpg
這個圖片是程序第一次啟動前啟動,默認如下:
4.App.xaml
這個文件主要是管理應用程序的生命周期,內容如下:

其中Application.ApplicationLifetimeObjects 標簽內定義了應用程序的啟動過程(Launching)、程序的關閉過程(Closing)、程序的重新激活(Activated)、失去激活 (Deactivated),定義了這些生命周期事件后,我們可以在Code behind 里面找到相應的事件入口,打開App.xaml.cs文件,可以看到如下事件:

相對于Android 的多任務生命周期,Windows Phone 7單任務的生命來得更簡單些,不過看園子里面有牛人己經看出微軟明年可能發布帶多任務的和復制/粘貼等功能的版本,很給力呀。呵呵。暫時的單任務只能在這 個生命周期處理文件中處理了,比如應用的切換我們可以在生命周期里面及時的保存一些必要的數據,不致于丟失。
5.MainPage.xaml
此文件為程序的主入口頁,打開設計視圖,Windows Phone 7默認為我們編寫了一個小頁面,截圖如下:

而XAML文件其實是一個標準的XML文件,也是應用程序的UI文件,而這里我們要著重了解的是XAML的名字空間。截圖如下:

- xmlns 默認的空間,如果在UI里面控件沒有前綴則代表它屬于默認的名字空間。例如,mainPages 里面的Grid? 標簽。
- xmlns:x代表專屬的名字空間,比如一個控件里面有一個屬性叫name? 那么 x:name 則代表這個name 代表xaml的名字空間。
- xmlns:phone 包含在Miscroft.phone? 的引用DLL
- xmlns:shell 包含在Miscroft.sell的引用DLL,此文件可以幫助我們管理就用的生命周期。
- xmlns:d 呈現一些設計時的數據,而應用真正運行起來時會幫我們忽略掉這些運行時的數據,比如下文件的d:DesignWidth="480" d:DesignHeight="768"然后在如下的名字空間會忽略掉這些數據。
- xmlns:mc 布局的兼容性,這里主要配合xmlns:d 使用,它包含Ignorable屬性,可以在運行時忽略掉這些設計時的數據。
上面的所有即是一個標準的WP 7 的工程結構,慢慢來吧,從無到有的過程。
本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!