我有一个 WPF MVVM 应用程序,我想重构它以使用 MvvmCross 来支持 Android 实现的 WPF 和 Mono。
我们的应用程序的视图包括:
- 始终可见的工具栏
- 导航栏区域
- 主视图区域
- 弹出窗口区域
这些区域中的每一个都是主应用程序窗口上的 UserControl,而 UiService 只是交换每个区域中的视图。在弹出窗口的情况下,它也只是主窗口上的一个 UserControl,它在对 UiService 的 Show 或 Hide 调用时可见性发生变化。UiService 还接受一个上下文参数,该参数允许将状态信息传递到要显示的视图模型中。
主视图通常是几个子视图的组合。在这些情况下,主视图模型创建作为属性公开的子视图模型。主视图将这些属性设置为子视图的数据上下文。
我认为 MvvmCross 肯定会支持这种风格的复合视图,但我找不到这样的例子。是否有任何相关的 MvvmCross 示例?在 MvvmCross 中实施的推荐方法是什么?