找不到 MyProjectName.Views.MyViewName 的视图
Cannot find view for MyProjectName.Views.MyViewName
我有两个文件夹 ViewModels 和 Views。在 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());
}
视图模型不应创建或引用视图。
我有两个文件夹 ViewModels 和 Views。在 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());
}
视图模型不应创建或引用视图。