原文地址:http://channel9.msdn.com/Series/Windows-Phone-8-Development-for-Absolute-Beginners/Part-12-Improving-the-View-Model-and-Sample-Data
系列地址:http://channel9.msdn.com/Series/Windows-Phone-8-Development-for-Absolute-Beginners
原始碼: http://aka.ms/absbeginnerdevwp8
PDF版本:http://aka.ms/absbeginnerdevwp8pdf
查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/
我們已經完成了基本的工作,接下來我們將關注應用程式的核心:資料模型。這就要求我們將上一課的實體模型轉換成可行的資料模型,該模型應能夠代表資料和資料間的階層。
以下是我們本課的計劃:
我們將簡要分析我們的需求(實體模型是目前我們的全部)並快速繪製出將在應用程式中實現的資料模型。
我們將用代碼實現資料模型。
我們將在一個XML檔案中建立資料以便在設計時在MainPage的XAML設計器中對它進行顯示。
修改MainPage.xaml的綁定運算式以指向資料模型中類的執行個體和屬性。
1. 分析實體模型並設計資料模型
在查看了實體模型並思考如何最優地委派任務給不同的類之後,我設計了一個基本的類模型,應用程式類模型的資料結構如下:
SoundModel類包含對應用程式中五個聲音分組的引用。請注意這些屬性是SoundGroup類型。
SoundGroup類代表我之前稱為的“視圖”或“類型”。我一直在尋找一個正確的術語用以描述它,但本質上它是一個分組而不是一個視圖或類型。(視圖僅指出了用於顯示聲音的磁貼的視覺效果而類型在.NET中有特殊的內涵) SoundGroup有一個標題(它被用於在MainPage.xaml的Pivot控制項中作為PivotItem的標題)和一個SoundData的泛型集合。
SoundData類代表聲音本身。每個SoundData的執行個體將包含一個標題,通過點擊標題將會播放與SoundData關聯的聲音,它儲存在SoundData的FilePath屬性中。
接著我們將通過代碼來實現圖中的功能並且在實現的過程中還會有一些補充。
2. 為應用程式建立新的資料模型類
根據我們的計劃和資料模型圖表,我們將實現這個新的資料模型。
按右鍵ViewModels檔案夾,選擇添加|建立項: