有关WPF中DataContext上下文问题
刚刚学习WPF,在xaml对应的xaml.cs文件中,this.DataContext只能被一个ViewModel所赋值。那么我就想,将其他B C D (ViewModel)放在A(ViewModel)中。结果发现,B C D(ViewModel)中的属性无法被读取。请问大家,这是怎么一回事呢
public class MainWindow : Window
{
public MainWindow()
{
A_ViewModel = new A_ViewMode();
this.DataContext = A_ViewModel;
//当前MainWindow.xmal的对应前端UI中无法读取到A_ViewModel中的B_ViewModel的CloseCommand属性
//已经证实,CloseCommand是没有问题的,通过直接this.DataContext = B_ViewModel;证实过
}
public A_ViewMode; A_ViewModel;
}
public class A_ViewModel :ICommand
{
public A_ViewModel()
{
B_ViewModel= new B_ViewModel();
//具体不再写了,表示new过
}
public B_ViewModel B_ViewModel;
}
public class B_ViewModel :ICommand
{
public B_ViewModel()
{
CloseCommand = new ICommand();
//具体不再写了,表示new过
}
public ICommand CloseCommand { get; set;}
}
补充一下,是不是我的理解有问题? 一个View仅仅对应一个ViewModel,而我的思想是把一个View中功能细分了,产生了多个ViewModel。却想把这个多个ViewModel全都绑定到一个View上? 这是不是我对MVVM框架理解的有问题啊?