0
ViewModels是否應與其他ViewModel相關聯並與其交互或僅允許與模型交互?或者兩者兼而有之?ViewModel和Model並觀察變化
我會盡力使用代碼更加明確:
這個代碼可以使用嗎?
public class MainViewModel
{
public MainViewModel(IPeopleService service)
{
var people = service.GetPeople();
People = new ObservableCollection<PersonViewModel>(people.Select(p => new PersonViewModel(p)));
}
public ObservableCollection<PersonViewModel> People { get; set; }
public PersonViewModel SelectedPerson { get; set; }
}
您會看到SelectedPerson是ViewModel,而不是Model。
OK,但他們(MVVM庫/框架的作者)也說,這是容易濫用這一機制,所以我儘量避免它。但是,我認爲你是對的。如果你不緊張的ViewModels可能會好得多。但是它如何改變我作爲示例發佈的代碼?爲了使它正確,我應該修改什麼? – SuperJMN 2014-11-02 12:20:34
我編輯了我的答案。除此之外,您可以將選定的人員實例作爲導航參數傳遞到您要導航的頁面。 – 2014-11-02 13:25:05