找不到 MyProjectName.Views.MyViewName 的视图

Cannot find view for MyProjectName.Views.MyViewName

我有两个文件夹 ViewModelsViews。在 ViewModels 中我有两个 classes:ShellViewModel 和 AViewModel,在查看我有两种形式的 ShellView 和 AView。 ShellView有一个按钮,当我点击它时,AView被打开并出现错误:

Cannot find view for DBStudent.Views.Aview.

在我的 Bootstrapper class 中,我更改了: 来自:

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());
}

您应该将视图模型的实例传递给 window 管理器:

public void CreateClick()
{
    manager.ShowDialog(new AViewModel());
}

视图模型不应创建或引用视图。