为什么RibbonMenu嵌套限制在5个级别?我怎么能覆盖这个呢?

时间:2014-09-11 12:05:09

标签: excel vsto excel-addins ribbonx

在Excel 2010 Addin中,我们使用数据库中的项目以编程方式填充多级 RibbonMenu 。但是,似乎无法显示具有五个以上级别的 RibbonMenu 。 (某些)客户端获得运行时异常,表明最多只支持5个嵌套级别(逐字:“Maximal 5geschachtelteMenüsindindulässig。”)。在关闭对话框窗口后,菜单显示并且功能正常,但是缺少超过五个级别的任何菜单项,并且级别< = 5的一些项目被禁用(例如,RibbonMenus缺少它们的级别-5-RibbonButtons)。

菜单是用代码(使用C#)还是以声明方式(XML)创建无关紧要。

  • 为什么有嵌套限制?是否记录在某处?
  • 我们可以采取什么措施来覆盖这个限制吗?数字'5'在 该消息看起来很可疑,就像有一些神奇的int值 被设置在某个地方...
  • 是否有其他可用于显示的控件 Excel功能区内的多级嵌套菜单?

谢谢和最诚挚的问候,
托马斯

1 个答案:

答案 0 :(得分:0)

我不会对此表示任何有用的知识,只是一种兴趣。

我已尝试在VS2013中的Visual Ribbon Designer上嵌套菜单控件,实际上你只能达到5级深度。当运行某些项目时,会生成一条错误消息(在每个添加的项目上),最多显示5个嵌套级别。所以它看起来确实是绝对的限制!也看起来像这个错误消息是文档!该错误消息与XML CustomUI代码有关,因此不太可能进行解决。

但是,在第四级,您似乎可以添加 SplitButton 并向其添加项目,这可能会为您提供所需的附加选项。如果这适合您的应用程序,则可以在此级别添加Gallery控件。 同样有趣的是,以这种方式嵌套的SplitButtons的最大数量似乎也是5。

可能是时候考虑一​​下UI的重新设计了吗?