【发布时间】:2012-01-04 14:52:18
【问题描述】:
我有一个带有四个按钮的 RibbonBar,每个按钮选择一个不同的视图并将其注入 MainRegion。现在,它运行良好,但四个视图中的每一个都有一些共同的控件,例如显示用户名、日期/时间、搜索框等。到目前为止,我已经制作了单独的视图,但我想知道是否有实现母版页/用户控件的方法,这样我就不必重复代码.
所以现在的设计是这样的:
外壳
<Window>
<Grid>
<DockPanel>
<RibbonBar Regions:RegionManager.RegionName="ToolbarRegion">
</RibbonBar>
<ContentControl Regions:RegionManager.RegionName="MainRegion">
</ContentControl>
</DockPanel>
</Grid>
</Window>
ToolbarRegion 包含带有四个按钮的 RibbonBar。
每个 Button 都会将一个视图注入 MainRegion。这些视图中的每一个都有一些通用控件(很像 ASP.Net 中的母版页),但是每个视图的内容是不同的。
有一些方法可以解决这个问题(我无法更改 Shell 设计),但我想知道是否有更好、更优雅的方法来解决这个问题。
【问题讨论】:
-
当然有这种方式。你尝试了什么?您是否尝试将共享内容移至母版页,并仅在子视图中保留实际内容?
-
你怎么
inject a view into the MainRegion?您使用哪种方法?我有非常密切的应用程序,我可以发布基本结构,但首先我需要知道你现在使用什么:)