找不到MyProjectName.Views.MyViewName的视图

问题描述 投票:1回答:1

我有两个文件夹ViewModels和Views.In 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());
}
c# wpf caliburn.micro
1个回答
0
投票

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.