我有两个文件夹 ViewModels 和 Views 。在ViewModels中,我有两个类:ShellViewModel和AViewModel,在View中,我有两种形式:ShellView和AView。 ShellView有一个按钮,当我单击它时,将打开AView并出现错误:
找不到DBStudent.Views.Aview的视图。
在我的Bootstrapper类中,我进行了更改: 从此:
protected override void OnStartup(object sender, StartupEventArgs e)
{
DisplayRootViewFor<ShellViewModel>();
}
对此:
protected override void OnStartup(object sender, StartupEventArgs e)
{
DisplayRootViewFor<AViewModel>();
}
Aview打开并且没有错误
为什么会这样?
我这样打开AView:
IWindowManager manager = new WindowManager();
public void CreateClick()
{
manager.ShowDialog(new AView());
}
答案 0 :(得分:0)
您应该将视图模型的实例传递给窗口管理器:
public void CreateClick()
{
manager.ShowDialog(new AViewModel());
}
视图模型不应创建或引用视图。