createdream 发表于 2016-4-6 11:04:30

如何将MDI窗口中的RibbonPage合并到父窗口的Ribbon中

如题,MDI子窗口中有快捷工具,如何在打开子窗口时候将子窗口中的快捷工具合并到父窗口的Ribbon页中。
现在已知的是子窗口的StatuesBar可以合并到父窗口中,但是Ribbon上面的Page和按钮如何合并到父窗口中。

createdream 发表于 2016-4-6 11:20:46

搞定了!(-_-)
将父窗体中的
MdiMergeStyle属性修改为Always,从而引发Merge和UnMerge事件,
在Merge事件中添加parentRRibbon.MergeRibbon(childRibbon);代码,在UnMerge事件中添加parentRRibbon.UnMergeRibbon();代码。
完整代码如下:
private void rbMain_Merge(object sender, DevExpress.XtraBars.Ribbon.RibbonMergeEventArgs e)
      {
            RibbonControl parentRRibbon = sender as RibbonControl;
            RibbonControl childRibbon = e.MergedChild;
            parentRRibbon.StatusBar.MergeStatusBar(childRibbon.StatusBar);
            parentRRibbon.MergeRibbon(childRibbon);

      }

      private void rbMain_UnMerge(object sender, RibbonMergeEventArgs e)
      {
            RibbonControl parentRRibbon = sender as RibbonControl;
            
            parentRRibbon.StatusBar.UnMergeStatusBar();
            parentRRibbon.UnMergeRibbon();

      }

13005007127 发表于 2023-5-18 10:34:01

createdream 发表于 2016-4-6 11:20
搞定了!(-_-)
将父窗体中的
MdiMergeStyle属性修改为Always,从而引发Merge和UnMerge事件,


非常不错的呢。
页: [1]
查看完整版本: 如何将MDI窗口中的RibbonPage合并到父窗口的Ribbon中