總結與知識檢定

已完成

在本課程模組中,您已了解通用 Windows 平台 (UWP) 和 Windows Presentation Foundation (WPF) 支援資料繫結的方式。 您已深入了解透過自動、穩固且高效能的方式來連結應用程式 UI 與商務邏輯的程序。

您已了解如何在程式碼中的物件屬性變更時更新 UI,以及如何在 UI 變更時更新屬性。 您已在 ListBoxComboBox 中顯示元素清單 (例如色彩):這只是可用來在畫面上顯示項目集合之眾多控制項的其中兩個。 如果您已完成每個教學課程,您現在也已具備控制這些控制項中個別項目之顯示方式的實際操作體驗。 您也已體驗如何將使用者已選取某個項目的資訊通知商務邏輯。 最後,您現在已了解如何在 UI 上自動反映對集合所作的變更 (例如新增或移除項目)。

即使是開發不甚複雜的應用程式時,將 UI 與邏輯分隔也至關重要。 它可讓您的商務邏輯 (程式碼)「思考」商務物件。 例如,當我們要求使用者名稱時,不需要在邏輯中考量 TextBox 控制項。 我們只需要處理使用者所輸入之文字的 String 物件。 我們的最愛色彩清單會儲存實際的 ColorDescriptor 物件,而不是與 UI 相關聯的物件,例如 ListItem。 但是因為有資料繫結,UI 仍然可以使用設計人員所選擇的任意方式來顯示那些項目:透過 ListBoxComboBox、搭配卡片的類格線配置,或甚至是浮動切換。 您不必因為那些選擇而變更商務邏輯。

對邏輯和 UI 採取適當分隔,也能讓您針對商務邏輯撰寫個別的自動化單元測試。 這些測試可在不啟動應用程式的情況下執行 (例如,搭配 Visual Studio 單元測試使用)。 這些測試會仰賴歷經百般考驗的資料繫結機制,來在 UI 和您的商務邏輯程式碼之間傳送資料。

簡化類別程式碼撰寫

最後,在此課程模組中,您已了解如何利用基底類別來簡化資料繫結易用之類別的程式碼撰寫。 這是套用業界最佳做法 Model-View-ViewModel (MVVM) 架構的第一步。

模型在我們的小型範例中已由 ColorDescriptor 類別完美示範。 所儲存的真實世界物件或概念,在此案例中為色彩。

View 是我們的 XAML程式碼、MainPage.xaml (UWP) / MainWindow.xaml (WPF) 和 ColorList.xaml,以及其程式碼後置檔案,MainPage.xaml.cs (UWP) / MainWindow.xaml.cs (WPF) 和 ColorList.xaml.cs

ViewModel 則是實際推動 UI、做出決策 (例如是否應該啟用按鈕) 的商務邏輯。 在我們的 UWP 範例中,MainPageLogicColorListLogic 類別基本上就是 ViewModel 類別。 在 WPF 範例中,MainWindowDataContextClockColorListDataContext 類別都是 ViewModel。

MVVM 是支援資料繫結的 UI 架構最為廣泛使用的架構模式。 有許多的 MVVM 工具組和架構,可供您用來在 UWP、WPF 或甚至是 Windows App SDK 和 .NET MAUI 中開始進行開發。 一些最受歡迎的項目如下:

開始之前

現在,您已為 Windows 開發做好準備,我們建議您繼續學習。 查看下一個課程模組,深入了解如何將您的應用程式連線到雲端。 但首先,請透過下列測驗來檢驗您學到的知識。

知識檢查

1.

資料繫結是什麼?

2.

您必須實作哪個介面,才能在 UI 上反映 C# 屬性的變更?

3.

您必須怎麼做,才能將在文字方塊中輸入的文字透過資料繫結傳輸到 C# 字串屬性?

4.

您必須怎麼做,才能在清單方塊中顯示儲存在 IEnumerable 集合中的物件?

5.

您將在應用程式執行時,將項目新增至集合。 您要如何讓 UI 反映這些變更?