我的节目由一个TreeView和两个contentPresenters地面组成.mainWindow,TreeView和每个contentPresenter都有自己的viewModels.
我想调用一个函数在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
}
}
Run Code Online (Sandbox Code Playgroud)
我试图通过使用来访问MainWindowVM来自TreeViewViewModel:
public MainWindowViewModel ViewModel { get { return DataContext as MainWindowViewModel; } }
Run Code Online (Sandbox Code Playgroud)
但它没有多大意义.因为MWVM不是DataContext的TreeViewViewModel.