2
我有一個叫做CompanyListViewModel
的ViewModel。它代表我申請中的公司名單。它具有ObservableCollection<CompanyViewModel>
類型的屬性,ListView綁定到該屬性。我應該在多個上下文中使用ViewModels /模型嗎?
CompanyListViewModel
有一個叫做OpenCommand
的命令。該命令將在新窗口中打開所選公司並進行編輯。
是OpenCommand
調用看起來像這樣的功能:
public void Open()
{
Company selectedCompany = SelectedCompanyViewModel.Model
CompanyViewModel elm = new CompanyViewModel(selectedCompany);
openHandler(elm); // opens a new window with the given vm.
}
所以這個功能:
- 獲取當前選定
CompanyViewModel
- 檢索底層模型。
- 實例化一個共享現有視圖模型模型的新視圖模型。
- 打開此視圖模型。
這是正確的嗎?我有兩個選擇:
- 使用現有的視圖模型
- 獲取從datbase的新模式打開一個新窗口,將其放置在一個新的視圖模型,並打開一個窗口,與此有關。
我應該使用哪種方法?