我正在构建一个WPF应用程序,并使用caliburn.micro for MVVM。 我有几十个视图(UserControls)。WPF MVVM视图/用户控件继承或类似的概念?
视图有标题正文和页脚。 如下图所示,标题包含两个用于粉碎操作的按钮,页脚包含一个状态栏。
页眉和页脚份将是相同的所有视图,但身体的内容会有所不同对视图中查看。 目前我正在为每个视图重复代码的标题和正文,现在我试图消除重复的代码。
为了达到此目的,我正在考虑制定一个共同的基本视图,与所有其他视图共享。
当前实现
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<Grid Name="Header/>"
<Grid Name="Body/>"
<Grid Name="Footer/>"
</StackPanel>
</UserControl>
试图acheive像
基础视角
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<Grid Name="Header/>"
<!-- {Placeholder for child view} -->
<Grid Name="Footer/>"
</StackPanel>
</UserControl>
ChildView
<Grid Name="Body"/>
可能是我的方法是错误的(我对WPF有点新)。
我的目标是通过继承视图中的一些控件来消除重复代码。
如何将基本视图与子视图组合? 任何人都可以建议我达到我的要求吗? 提供一些代码示例将不胜感激。
在WPF中不可能继承Views(UserControls),你的页眉和页脚在整个应用程序中是否保持不变? – XAMlMAX
是的它没有改变。只是我想以某种方式将页眉和页脚添加到我的子视图中。 – Rahul