如果我有一个dx:ThemedWindow
类型的X文件,其中包含一个AccordionControl
。我应该使用哪个区域控件来创建该区域的参考?我尝试了DockPanel
,但没有成功。
X文件如下所示。
<dxa:AccordionControl>
<dxa:AccordionItem Header="Home">
<dxa:AccordionItem Header="Products"/>
<dxa:AccordionItem Header="Downloads"/>
</dxa:AccordionItem>
<dxa:AccordionItem Header="Get Help">
<dxa:AccordionItem Header="Support"/>
<dxa:AccordionItem Header="Documentation"/>
</dxa:AccordionItem>
<dxa:AccordionItem Header="Client Center"/>
</dxa:AccordionControl>
在Shell.xaml
中,我尝试使用RegionManager
来获得该区域。
<DockPanel DockPanel.Dock="Bottom" prism:RegionManager.RegionName="{x:Static inf:RegionNames.MenuRegion}" />
你能帮我吗?
答案 0 :(得分:0)
Devexpress为您的控件提供了一组区域适配器(请在安装目录中查看诸如components \ source \ prismadapters之类的东西)。
如果没有AccordionControl
可用的区域适配器,则必须自己编写。
答案 1 :(得分:0)
您的问题对我来说是个模棱两可的问题,我不知道您是否想在窗口中放置一个AccordionControl
主机,还是希望AccordionControl
成为一个区域本身。
Prism没有内置用于DockPanel
的区域适配器,但是您可以在窗口中声明DockPanel
并在其中使用ContentControl
来承载菜单的区域
<DockPanel LastChildFill="True">
<ContentControl DockPanel.Dock="Bottom" prism:RegionManager.RegionName="{x:Static inf:RegionNames.MenuRegion}"/>
</DockPanel>
然后,您可以使用区域管理器的RequestNavigate
方法navigate对其进行操作,也可以使用RegisterViewWithRegion
在应用程序中注册视图以进行视图发现。
DevExpress开箱即用地为Prism提供了许多区域适配器,但对于AccordionControl
没有提供,请参阅documentation以供参考。
您必须自己为该特定控件创建一个合适的区域适配器。区域适配器可能非常复杂,因此,开始学习这些资源。