在MVVM Light框架中,事件是WPF應(yīng)用程序中UI與后臺代碼進(jìn)行交互的最主要方式,與傳統(tǒng)方式不同,mvvm中主要通過綁定到命令來進(jìn)行事件的處理,
因此要了解mvvm中處理事件的方式,就必須先熟悉命令的工作原理。
RelayCommand命令:
WPF命令是通過實現(xiàn) ICommand 接口創(chuàng)建的。 ICommand 公開了兩個方法(Execute 及 CanExecute)和一個事件(CanExecuteChanged)。
Execute方法 | 執(zhí)行與命令關(guān)聯(lián)的操作 |
CanExecute方法 | 確定是否可以在當(dāng)前命令目標(biāo)上執(zhí)行命令,返回值為true則按鈕可用,為false的時候按鈕disable。在MvvmLight中實現(xiàn)ICommand接口的類是RelayCommand |
RelayCommand通過構(gòu)造函數(shù)初始化Execute 和 CanExecute方法,因此,構(gòu)造函數(shù)傳入的是委托類型的參數(shù),