2017-01-16 27 views
0

一個RibbonControl我工作的一個插件框架其中應接受插件它實現我的公共接口,並且有一個GUI與DevExpress.RibbonControl完成。我沒有問題加載插件,並與插件RibbonControl合併插件框架RibbonControl。當我創建一個RibbonPageRibbonPagrGroup或在PageGroup項目和編程內容添加到我的插件RibbonControl沒有出現在屏幕上,但是當我調試,我可以看到的元素已添加到我的插件RibbonControl。看來DevExpress不會重新繪製插件RibbonControl框架RibbonControl合併之後添加的任何東西。現在的問題是,當它需要UnmergeRibbon()MergeRibbon()再次所以我的問題是我的框架不知道:有沒有從我的插件代碼以任何方式迫使MergedRibbons到「重合並()「編程方式添加RibbonPage /組/項,其中已被合併

我正在使用DevExpress版本14.2.11。

回答

1

合併是一次性操作,所以有必要在合併兩個RibbonControls之前添加所有項目。操作完成後,如果將項目動態添加到子項目,則更新父RibbonControl的唯一方法是手動取消合併RibbonControls並再次合併它們。

有公共方法merge/unmerge RibbonControls,但這不是正確的路要走。正確的方法是在顯示其容器之前將所有項目添加到子控件RibbonControl。

當談到開發插件框架而不是簡單的WinForms應用程序時,這可能並不那麼容易。如果在適當的時候沒有辦法添加項目,那麼開發一個簡單的自定義合併/取消合併功能可能會更容易,這些功能會根據您自己的規則添加/移除項目。

+0

我知道標準的合併/取消合併方法,正如您所指出的,在插件RibbonControl與框架PluginControl合併時知道所有子控件是有問題的。目前,我只能使用靜態插件,除了在界面中實現插件和框架之間的通信方式之外,似乎沒有辦法解決這個問題。無論如何感謝您的反饋。 –

相關問題