Catel框架-替换视图
本文关键字:视图 替换 框架 Catel | 更新日期: 2023-09-27 17:50:25
我正在用多个模块构建应用程序。每个模块包含一个视图模型和视图。
我想创建解决方案,自动显示SelectedModule在我的应用程序的一部分。
假设我有这样的MainWindow视图:
<catel:UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:catel="http://catel.codeplex.com" xmlns:dxsch="http://schemas.devexpress.com/winfx/2008/xaml/scheduler"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
x:Class="OrchestraCatel.Views.MainWindow">
<DockPanel LastChildFill="True">
<ContentControl x:Name="Ribbon" DockPanel.Dock="Top">
<!-- My Ribbon-->
</ContentControl>
<ContentControl x:Name="MainView" DockPanel.Dock="Top">
<!-- My Main Page-->
</ContentControl>
</DockPanel>
</catel:UserControl>
我想显示一个UserControl在另一个DLL内指定的MainView
ContentControl在功能区项目单击后。
功能区按钮和MainView视图都在模块DLL
我有一个想法,包括SelectedViewModel
在我的MainPage
ViewModel,然后,为每个ViewModel创建datatemplate,但这个解决方案将打破我的模块的愿景,这应该是独立的。
在Catel中是否有一种方法可以将视图替换为另一个视图?从任何地方?
我认为Prism为您解决了这个问题。请看Prism与Catel的整合:
https://catelproject.atlassian.net/wiki/display/CTL/Catel.Extensions.Prism