我在插件中创建了我的自定义功能区。现在我想添加主屏幕中存在的新幻灯片命令(见下面的截图)。
5 回答
您可以通过指定其 IdMso 值将内置控件添加到自定义选项卡。请参阅Office 2013 帮助文件:Office Fluent 用户界面控件标识符。
您可以在 MSDN 的以下系列文章中阅读有关 Ribbon UI 的更多信息:
我想经过大量搜索后,我终于弄明白了!这是您需要的所有代码,删除其他所有代码这将创建一个新的幻灯片按钮,就像 PowerPoint 中的默认按钮一样
<group id="add_slide" label="Add Slide">
<control idMso="SlideNewGallery" size="large" />
</group>
我目前在我的插件中有新的幻灯片按钮,如下图所示,它给了我一张新幻灯片
但是我想要像主页功能区中已经存在的新幻灯片这样的选项,我可以在其中选择模板。有没有办法在我的自定义功能区中调用此按钮所以下面是我的新闻幻灯片,这是我想要在我的插件中获得的
private void New_slide_Click(object sender, RibbonControlEventArgs e)
{
PowerPoint.Application ppApp = Globals.ThisAddIn.Application;
ppApp.CommandBars.ExecuteMso("SlideNewGallery");
}
我在 VS 中创建了一个基于 xml 模板的新功能区。之后我添加了一个组和一个基于idMso-Value的控件。使用此 xml 文件时
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
<ribbon>
<tabs>
<tab id="tab0" label="AddIn">
<group id="grpCustom">
<button idMso="SlideNew" size="large" label="YOUR CUSTOM TEXT"></button>
</group>
<group idMso="GroupSlides"></group>
</tab>
</tabs>
</ribbon>
</customUI>
这将产生该自定义功能区。Eugene Astafiev指出,您可以在 MSDN 中找到 idMso-Values。
正如Franz所解释的,解决方案是使用 idMso。对于您正在寻找的新幻灯片命令,如果您在idMso 表中查看“新幻灯片”的 MSN,您会发现两个条目。您正在寻找的是一个idMso=SlideNewGallery的画廊。(不是按钮)。您可以在 XML 中添加它。我喜欢使用功能区编辑器。使用功能区编辑器,它看起来像这样:
CustomUI XML 相关部分如下所示
<group id="TD_GrpMisc" label="Misc">
<gallery
idMso="SlideNewGallery"
size="large"/>
<button
idMso="SlideNew"
size="large"/>
</group >