2012-09-11 77 views
0

作爲MVVM的新手,我需要了解MVVM,並且還需要對我擁有的幾個基本查詢進行評論。MVVM實現查詢

我已在我的測試項目中實施了INotifyPropertyChanged 例如:Employee類,讀取數據,顯示錶單,編輯數據,提交時使用MVVM更新員工源。

但需要一個想法,我們如何才能使下面的代碼作爲一個完整的sln?

  1. 要啓用/禁用按鈕,我該如何實現ICommand接口?
  2. 什麼是MVVM中的控制器?
  3. 從UI中,流程如何進入模型?
  4. 接口INotifyPropertyChanged應該在model或viewmodel上實現嗎?
  5. 爲什麼我們需要在MVVM中使用ICommand接口和ObservableCollection?
  6. 我們可以有Windows的MVVM還是僅適用於WPF?
  7. 爲什麼eveyone首先強調實施模型?

任何好的鏈接,將解釋的基本用法 所有的接口,我們必須在MVVM中實現,說我的MVVM實現已完成?

class EMP 
{ 
    public EMP() 
    { 

    } 

    public string EmpName { get; set; } 
    public string EmpID { get; set; } 

} 


class EmpVModel: INotifyPropertyChanged 
{ 
    public EmpVModel() 
    { 
     Employees = GetEmployeeList(); 
    } 

    ObservableCollection<EMP> GetEmployeeList() 
    { 
     ObservableCollection<EMP> objEmp = new ObservableCollection<EMP>(); 
     objEmp.Add(new EMP { EmpName = "A", EmpID = "1" }); 
     return objEmp; 

    } 

    public event PropertyChangedEventHandler PropertyChanged; 
    public ObservableCollection<EMP> _Emp; 

    public ObservableCollection<EMP> Employees 
    { 
     get { return _Emp; } 
     set { _Emp = value; RaiseChange("Employees"); } 
    } 

    public void RaiseChange(string Employee) 
    { 
     if (PropertyChanged != null) 
     { 
      PropertyChanged(this, new PropertyChangedEventArgs(Employee)); 
     } 
    } 
} 

在此先感謝...

回答

0

這些都是很多的一個問題。請看Wikipedia: MVVM,並查看該文章中引用的鏈接以供進一步閱讀。