0

在 Excel 2010 插件中,我们以编程方式使用数据库中的项目填充多级RibbonMenu。但是,似乎不可能显示超过五个级别的RibbonMenu 。(一些)客户端得到一个运行时异常,指出最多只支持 5 个嵌套级别(逐字:“Maximal 5 geschachtelte Menüs sind zulässig.”)。关闭对话窗口后,菜单显示并且可以正常工作,但是任何深度超过五级的菜单项都丢失了,并且级别 <= 5 上的某些项目被禁用(例如,RibbonMenus 缺少它们的 level-5-RibbonButtons)。

菜单是在代码中(使用 C#)还是以声明方式(XML)创建的并不重要。

  • 为什么有嵌套限制?它是否记录在某处?
  • 我们能做些什么来超越这个限制吗?消息中的数字“5”看起来很可疑,就像在某处设置了一些神奇的 int 值......
  • 是否有任何其他控件可用于在 Excel 功能区中显示多级嵌套菜单?

谢谢和最好的问候,
托马斯

4

1 回答 1

0

我对这方面没有任何了解,只是兴趣。

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

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

可能是时候考虑重新设计一些 UI 了?

于 2014-09-11T18:40:47.937 回答