Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在独立应用程序中使用WPF导航_Wpf_Mvvm - Fatal编程技术网

在独立应用程序中使用WPF导航

在独立应用程序中使用WPF导航,wpf,mvvm,Wpf,Mvvm,在独立应用程序中使用WPF导航是最佳实践吗?它可以与WPF MVVM模式一起使用吗?回答第二个问题,是的,WPF导航可以非常成功地与MVVM模式一起使用 就第一个问题而言,最好的答案是“视情况而定”。具体来说,这取决于您试图创建的应用程序;有些应用程序在逻辑上是“导航”应用程序,其中用户需要以某种方式浏览一系列屏幕,而其他应用程序则有不同的范例。我能给你的最好建议是不要反对它——如果你的应用程序在导航上下文中有意义,那么一定要使用WPF导航,但如果没有,那么就不要试图把它硬塞进导航上下文中 确定

在独立应用程序中使用WPF导航是最佳实践吗?它可以与WPF MVVM模式一起使用吗?

回答第二个问题,是的,WPF导航可以非常成功地与MVVM模式一起使用

就第一个问题而言,最好的答案是“视情况而定”。具体来说,这取决于您试图创建的应用程序;有些应用程序在逻辑上是“导航”应用程序,其中用户需要以某种方式浏览一系列屏幕,而其他应用程序则有不同的范例。我能给你的最好建议是不要反对它——如果你的应用程序在导航上下文中有意义,那么一定要使用WPF导航,但如果没有,那么就不要试图把它硬塞进导航上下文中


确定应用程序是否使用导航范例的最佳方法可能是后退按钮是否有意义;如果有,那么您将希望使用Frame或NavigationWindow,以便使用内置的WPF导航支持。

我认为System.Windows.navigation还没有准备好用于生产应用程序。我发现,如果需要在页面之间传递数据,那么在WPF4应用程序中使用它是一种令人沮丧的体验

我还遇到了一个导致错误的严重错误

许多WPF工具包和框架用于MVVM、MVC和MVP风格的应用程序。实际上,它们都取代了Microsoft提供的自定义导航服务的超链接、页面、框架和日志类。因此,开发者社区似乎对System.Windows.Navigation投了“不信任票”。 希望未来对导航风格应用程序的支持会有所改善

如果您有一个适合导航隐喻的应用程序,那么可能值得研究这些替代框架。(当然,这些工具包有自己的学习曲线。)


我自己仍在寻找解决这个问题的好方法。

你知道在独立WPF应用程序中使用导航的好例子吗?+1表示“不要为它而战”。在这种导航场景中,许多应用程序根本毫无意义。