如何创建多个不同的外壳
How to create multiple distinct shells
我想使用 Prism 7.1 和 Unity 编写一个多 window WPF 应用程序。主 window 应该承载一些按钮,每个按钮都会打开一个新的 window。
Prism/Unity 中是否有一种内置方法可以 open/create 一次 window 并且在用户多次单击按钮时不会创建新实例?当用户关闭 window 时,单击主 window 中的相应按钮将再次创建 window.
的新实例
我知道基于视图的导航允许导航到现有视图(这基本上是在视图级别上实现的)。但是视图被注入到区域中,区域在 shell 中定义,据我所知,shell 是顶级 window。那么如何从一个 shell 导航到一个新的?
Is there a built-in way in Prism/Unity that will open/create a window only once and not create new instances when the users clicks the button multiple times?
不,因为它们都没有提供任何打开或创建 windows 的方法。
话虽这么说,创建一个创建新 window 并且在再次调用时不执行任何操作的服务是微不足道的。将该服务注册为单例,将其注入您的视图模型,然后就完成了。
我想使用 Prism 7.1 和 Unity 编写一个多 window WPF 应用程序。主 window 应该承载一些按钮,每个按钮都会打开一个新的 window。
Prism/Unity 中是否有一种内置方法可以 open/create 一次 window 并且在用户多次单击按钮时不会创建新实例?当用户关闭 window 时,单击主 window 中的相应按钮将再次创建 window.
的新实例我知道基于视图的导航允许导航到现有视图(这基本上是在视图级别上实现的)。但是视图被注入到区域中,区域在 shell 中定义,据我所知,shell 是顶级 window。那么如何从一个 shell 导航到一个新的?
Is there a built-in way in Prism/Unity that will open/create a window only once and not create new instances when the users clicks the button multiple times?
不,因为它们都没有提供任何打开或创建 windows 的方法。
话虽这么说,创建一个创建新 window 并且在再次调用时不执行任何操作的服务是微不足道的。将该服务注册为单例,将其注入您的视图模型,然后就完成了。