Merge 以编程方式添加的DevExpress RibbonPage不显示

Merge 以编程方式添加的DevExpress RibbonPage不显示,merge,devexpress,ribbon-control,Merge,Devexpress,Ribbon Control,我在mdiform中有一个RibbonControl,在设计时在MDIChildForm中添加了另一个RibbonControl。然后在运行时,我添加了一个RibbonPage,其中包含一个RibbonGroup和一个BarButtonItem。像这样: private void MDIChildForm_Load(object sender, EventArgs e) { BarButtonItem btn = ribbonControl1.Items.CreateButton("Test

我在mdiform中有一个RibbonControl,在设计时在MDIChildForm中添加了另一个RibbonControl。然后在运行时,我添加了一个RibbonPage,其中包含一个RibbonGroup和一个BarButtonItem。像这样:

private void MDIChildForm_Load(object sender, EventArgs e) {
  BarButtonItem btn = ribbonControl1.Items.CreateButton("Test Button");
  RibbonPageGroup group1 = new RibbonPageGroup("Test Group");
  group1.ItemLinks.Add(btn);
  RibbonPage page1 = new RibbonPage("Test Page");
  page1.Groups.Add(group1);
  ribbonControl1.Pages.Add(page1);
}
“测试页”在MDI父级中不可见。但是,当我更改活动mdi子窗体,并且功能区进行合并时,页面会出现

在我更改活动mdi子窗体之前,页面似乎不会合并


我遗漏了什么吗?

我找到了一个解决方案,但我认为这不是解决问题的最优雅的方式:

mainRibbon.UnMergeRibbon();
mainRibbon.MergeRibbon(mdiChildForm.ChildRibbon);

需要一个公共属性来访问子功能区。

我发现功能区页面是在自动合并后添加的。所以在合并的时候它并不存在。我已经“解决”了将activemdichild更改为另一个表单,然后返回到我需要的孩子。