C# 使用PRISM保存和恢复视图信息

C# 使用PRISM保存和恢复视图信息,c#,wpf,mvvm,prism,C#,Wpf,Mvvm,Prism,我正在开发一个应用程序,该应用程序将停靠区域分配给停靠控件。几个模块可以通过区域适配器将viewmodels注册到区域,隐式模板用于可视化 我现在正在研究如何在dockingcontrol中保存和恢复toolitems。控件具有允许视图信息(反)序列化并支持虚拟机延迟加载的功能,视图位置和停靠状态可用,但只要没有虚拟机耦合到它,它就不可见。结果是,当添加映射到反序列化视图的VM时,它将恢复到以前的位置。SerializationID用于映射 我面临的问题是,一旦shell初始化,这些信息就可用,

我正在开发一个应用程序,该应用程序将停靠区域分配给停靠控件。几个模块可以通过区域适配器将viewmodels注册到区域,隐式模板用于可视化

我现在正在研究如何在dockingcontrol中保存和恢复toolitems。控件具有允许视图信息(反)序列化并支持虚拟机延迟加载的功能,视图位置和停靠状态可用,但只要没有虚拟机耦合到它,它就不可见。结果是,当添加映射到反序列化视图的VM时,它将恢复到以前的位置。SerializationID用于映射

我面临的问题是,一旦shell初始化,这些信息就可用,然后当模块初始化时,它们应该以某种方式使用这些信息来添加具有反序列化视图的vm

我一直在考虑几种方法,最后我有了这个想法。有一些代码来处理反序列化,并调用ShellVM上的命令,然后使用dockingregion的regioncontext上的必要信息初始化列表。当模块初始化时,它们可以检查该列表并添加它们认为合适的VM

这是一个好方法还是有更好的技术来实现这一点

非常感谢