我正在开发一个带有一个主窗口和几个窗口的应用程序,如ProjectProperties窗口,UsersData窗口等。我希望这些窗口只创建一次(例如在应用程序启动时),并在需要时隐藏/取消隐藏它们。它们将仅在申请被关闭时处理。我应该在哪里保留这些窗户的实例?我应该将他们的ViewModel实例保存在MainWindowViewModel类中吗?那些视图(将它们保存在MainWindowView中)?我如何隐藏/取消隐藏它们?
我不想使用WVVM Light,Calibrum等。只是纯粹的MVVM。
我是WPF和MVVM的新手,所以请尽可能具体。
答案 0 :(得分:0)
这个链接在纯MVVM上有很好的导航功能(我认为这就是你想要的)。
https://rachel53461.wordpress.com/2011/12/18/navigation-with-mvvm-2/
视图在哪里"存储",在这里:
<Window.Resources>
<DataTemplate DataType="{x:Type local:HomeViewModel}">
<local:HomeView />
</DataTemplate>
<DataTemplate DataType="{x:Type local:ProductsViewModel}">
<local:ProductsView />
</DataTemplate>
</Window.Resources>
这也是Views和ViewModels之间的关系。
编辑:作为MVVM的新手,我还建议您阅读此内容https://rachel53461.wordpress.com/2011/05/08/simplemvvmexample/
希望它有所帮助。