c#:显示程序中以XML格式定义的动态菜单
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#:显示程序中以XML格式定义的动态菜单相关的知识,希望对你有一定的参考价值。
我有Outlook Addin,其中包含在XML文件中定义的按钮。这一行来自该文件。
<dynamicMenu id="idSaveAttachments" getLabel="GetLabel" image="SaveAttachmentsIcon" size="large" getScreentip="getScreenTooltip" invalidateContentOnDrop="true" getContent="GetAttachmentsMenu" getEnabled="GetEnabled"/>
据我所知,它定义了一个按钮,当它被点击时,调用GetAttachmentsMenu
函数来填充菜单。它完美地运作。
目前我想从代码中显示该菜单。我可以调用GetAttachmentsMenu
函数并以XML格式获取菜单内容,但我不知道如何显示菜单。
这怎么可能?是否有通用方法从程序中调用此类基于XML的UI项?
它使用Ribbon UI模型。
我试过这段代码:
Outlook.Application applicationObject = Globals.MyThisAddIn.Application;
Outlook.Explorer oExp = (Outlook.Explorer)applicationObject.ActiveExplorer();
oExp.CommandBars.ExecuteMso("idSaveAttachments");
但我收到错误:
“价值不在预期范围内。”
答案
Fluent用户界面没有提供任何内容。 ExecuteMso
方法仅接受内置控件的众所周知的idMso值。
以上是关于c#:显示程序中以XML格式定义的动态菜单的主要内容,如果未能解决你的问题,请参考以下文章
将代码片段插入数据库并在 textarea 中以相同方式显示