我正在使用Prism与Microsoft WPF Ribbon,一切都很好,但是我在上下文选项卡方面遇到了问题。我在Shell.xaml中定义了上下文选项卡:
<Ribbon:Ribbon.ContextualTabGroups>
<Ribbon:RibbonContextualTabGroup Header="CTG1" Visibility="Visible" Background="Red" />
<Ribbon:RibbonContextualTabGroup Header="CTG2" Visibility="Visible" Background="Blue" />
<Ribbon:RibbonContextualTabGroup Header="CTG3" Visibility="Visible" Background="Purple" />
<Ribbon:RibbonContextualTabGroup Header="CTG4" Visibility="Visible" Background="Green" />
<Ribbon:RibbonContextualTabGroup Header="CTG5" Visibility="Visible" Background="Orange" />
<Ribbon:RibbonContextualTabGroup Header="CTG6" Visibility="Visible" Background="Violet" />
</Ribbon:Ribbon.ContextualTabGroups>
通过这种方式,我可以在我的模块中引用那些上下文选项卡组,效果非常好。但是我希望在模块中定义上下文选项卡组。我考虑定义一个区域:
<Ribbon:Ribbon.ContextualTabGroups x:Name="RibbonContextualTabs" prism:RegionManager.RegionName="RibbonContextualTabs" />
然后在我的模块中,每个用户控件都会继承RibbonContextualTabGroup,并将它们注册到该区域中...是否有一种方法可以仅定义一个带有一些ContextualTabGroups的用户控件并将它们作为整体添加?例如:
<Ribbon:RibbonContextualTabContainer x:Class="Views.ContextualTabsView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary">
<Ribbon:RibbonContextualTabGroup Header="CTG1" Visibility="Visible" Background="Red" />
<Ribbon:RibbonContextualTabGroup Header="CTG2" Visibility="Visible" Background="Blue" />
<Ribbon:RibbonContextualTabGroup Header="CTG3" Visibility="Visible" Background="Purple" />
</Ribbon:RibbonContextualTabContainer>
作为ContextualTabsView.xaml,而且在我的模块中制作一个。
_regionManager.RegisterViewWithRegion("RibbonContextualTabs", typeof (ContextualTabsView));
我不知道我是否清楚地表达了我想要实现的目标,但我很感激任何帮助。
谢谢。