というViewModelがありCompanyListViewModel
ます。これは、私のアプリケーションの会社のリストを表しています。ObservableCollection<CompanyViewModel>
これには、ListViewがバインドするタイプのプロパティがあります。
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
- 基になるモデルを取得します。
- 既存のビューモデルのモデルを共有する新しいビューモデルをインスタンス化します。
- このビューモデルを開きます。
これは正しいです?私には2つの選択肢があります:
- 既存のビューモデルを使用して新しいウィンドウを開きます
- データベースから新しいモデルを取得し、それを新しいビューモデルに配置して、これでウィンドウを開きます。
どの方法を使用すればよいですか?