組成部分Model、View、ViewModel
View:UI界面
ViewModel:它是View的抽象,負責View與Model之間信息轉換,將View的Command傳送到Model;
Model:數據訪問層
View與ViewModule連接可以通過下面的方式
Binding Data:實現數據的傳遞
Command:實現操作的調用
AttachBehavior:實現控件加載過程中的操作
View沒有大量代碼邏輯。結合WPF、Silverlight綁定機制,MVP演變出了MVVM,充分利用了WPF、Silverlight的優勢,將大量代碼邏輯、狀態轉到ViewModel,可以說MVVM是專門為WPF、Silverlight打造的。
View綁定到ViewModel,然后執行一些命令在向它請求一個動作。而反過來,ViewModel跟Model通訊,告訴它更新來響應UI。這樣便使得為應用構建UI非常的容易。往一個應用程序上貼一個界面越容易,外觀設計師就越容易使用Blend來創建一個漂亮的界面。同時,當UI和功能越來越松耦合的時候,功能的可測試性就越來越強。