如何在 MVVM 模式中从页面导航到 WPF 中的页面?没有棱镜的概念[重复]

Posted

技术标签:

【中文标题】如何在 MVVM 模式中从页面导航到 WPF 中的页面?没有棱镜的概念[重复]【英文标题】:How to do navigation from pages to pages in WPF in MVVM pattern ? without the concept of prism [duplicate] 【发布时间】:2015-08-31 19:39:24 【问题描述】:

目前我正在开发一个有这么多页面的 wpf 应用程序。 因此,我将它创建为单个主窗口,并根据按钮或菜单项单击将页面导航到框架中。 我是 Wpf 的新手,甚至在 MVVM 中创建它。

通过 PRISM 导航对我来说很复杂。我找到了很多文章,但其中大多数不是为 wpf 的新生而写的。 那么我们如何在 MVVM 中轻松完成呢?有人有简单的演示吗? 提前谢谢..

【问题讨论】:

【参考方案1】:

这里有几个选项,我使用的一个是将您的应用程序开发为 SPA(单页应用程序)。本质上,您将拥有一个主窗口,其中包含绑定到当前视图模型的ContentControl

这个tutorial 似乎很好地遵循了这个想法。另外,this 应该会有所帮助。

如果您需要创建新窗口,那么您应该考虑创建一个窗口导航服务,可以使用依赖注入将其注入到您的视图模型中。 This 应该会进一步帮助您。

【讨论】:

以上是关于如何在 MVVM 模式中从页面导航到 WPF 中的页面?没有棱镜的概念[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在flutter中从streambuilder导航到其他页面?

WPF、MVVM、导航、保持依赖注入完整

遵循 MVVM 模式在 WPF 应用程序中处理导航的最佳方法是啥?

.NET Core 3 WPF MVVM框架 Prism系列之导航系统

页面导航后 WPF MVVM 数据绑定中断

2022-03-17 WPF面试题 如何理解MVVM中的 View 和 ViewModel?