WinForms MVVM
DevExpress MVVM框架允許您在WinForms應用程序中使用 Model-View-ViewModel設計模式。
分步教程
通過實時代碼部分探索100多個示例,這些交互式演示是實時編譯的,它們說明了如何在現(xiàn)實世界的應用程序中實現(xiàn)MVVM概念。
什么是MVVM,為什么要使用它?
Model-View-ViewModel(MVVM)是一種為WPF開發(fā)而設計的架構設計模式,它將應用程序分成三層。
- Model ——定義數(shù)據(jù)和業(yè)務邏輯。
- View——指定UI,包括綁定到ViewModel中的屬性和命令的所有可視元素(按鈕、標簽、編輯器等)。
- ViewModel——連接模型和視圖,這一層是視圖的抽象,它公開了用于將數(shù)據(jù)綁定到GUI元素并管理該數(shù)據(jù)的公共屬性和命令。
下圖說明了這些層及其通信方式。
這種分離為您提供了多種好處,例如開發(fā)人員和設計人員的開發(fā)過程更加獨立,代碼測試更加容易,UI重新設計更加簡單。
WinForms應用程序中的MVVM:問題和選項
沒有第三方MVVM框架的WinForms平臺缺乏敏捷數(shù)據(jù)綁定或可綁定命令等基本特性。為了遵循MVVM原則,您必須在一個額外的層中手動實現(xiàn)這些功能——Presenter,通常這一層包括UserControls及其背后的代碼、自定義View元素的方法、事件處理程序和綁定。
DevExpress MVVM框架包括對所有必需功能的內(nèi)置支持,并且可以使用WinForms進行純MVVM開發(fā),而不需要額外的工作負載。作為一個額外的好處,它很好地集成了DevExpress WinForms UI控件,也已經(jīng)在應用程序中使用。
支持的功能和優(yōu)點包括:
- 靈活的數(shù)據(jù)綁定
- 命令和命令綁定
- 行為和服務
- 實現(xiàn)通知和命令的高級方法
- MVVM上下文組件,它管理從創(chuàng)建ViewModels到注冊DevExpress服務的所有事情
- 簡單(POCO)類支持
- 與其他DevExpress WinForms控件的豐富互操作性
- 模板,專門為MVVM應用程序創(chuàng)建
- 支持Fluent API和屬性
- 各種設計時功能