私のプログラムは、地上レベルで aTreeViewと 2で構成されています。contentPresentersmainWindow、TreeView、およびそれぞれcontentPresenterに独自の viewModel があります。
mainWindowViewModelからの関数を呼び出したいと思いTreeViewViewModelます。
mainWindowViewModelに表示される内容を制御するため、これを行う必要がありcontentPresenters、表示を手動で更新したいと考えています。
まさかこんなことをするなんて…
TreeViewViewModel:
public class TreeViewViewModel
{
//Do I need to declare the MainWindowVM?
public TreeViewViewModel() { ... }
private void function()
{
//Command that affects display
//Manually call function in MainWindowVM to refresh View
}
}
MainWindowVM次を使用してからにアクセスしようとしましたTreeViewViewModel。
public MainWindowViewModel ViewModel { get { return DataContext as MainWindowViewModel; } }
しかし、それはあまり意味がありません。MWVM は の ではないためDataContextですTreeViewViewModel。