如何在Word插件manifest.xml中设置功能区垂直菜单项
在MS Word功能区通过manifest.xml实现垂直对齐的菜单按钮
你现在遇到的问题是Group里的按钮默认是水平并排的,要改成垂直排列的话,得换用Menu控件来嵌套按钮——因为Office Ribbon的Group本身是水平布局容器,而Menu内部的项默认就是垂直排列的,刚好符合你要的效果(像示例图最后一列那样)。
下面是修改后的manifest.xml代码,我把你的Button放到了Menu控件里,这样就能实现垂直排列:
<ExtensionPoint xsi:type="PrimaryCommandSurface"> <CustomTab id="wizdom.tab.name"> <Group id="wizdom.Group1"> <Label resid="wizdom.groupLabel" /> <Icon> <bt:Image size="16" resid="wizdom.icon_32x32" /> <bt:Image size="32" resid="wizdom.icon_32x32" /> <bt:Image size="80" resid="wizdom.icon_32x32" /> </Icon> <!-- 把原来的Button换成Menu控件,内部嵌套垂直排列的按钮 --> <Control xsi:type="Menu" id="wizdom.VerticalMenu"> <Label resid="wizdom.TaskpaneButton.Label" /> <Supertip> <Title resid="wizdom.TaskpaneButton.Label" /> <Description resid="wizdom.TaskpaneButton.Tooltip" /> </Supertip> <Icon> <bt:Image size="16" resid="wizdom.icon_32x32" /> <bt:Image size="32" resid="wizdom.icon_32x32" /> <bt:Image size="80" resid="wizdom.icon_32x32" /> </Icon> <!-- Menu内部的Items节点,里面的按钮会垂直排列 --> <Items> <Control xsi:type="Button" id="wizdom.TaskpaneButton"> <Label resid="wizdom.TaskpaneButton.Label" /> <Supertip> <Title resid="wizdom.TaskpaneButton.Label" /> <Description resid="wizdom.TaskpaneButton.Tooltip" /> </Supertip> <Icon> <bt:Image size="16" resid="wizdom.icon_32x32" /> <bt:Image size="32" resid="wizdom.icon_32x32" /> <bt:Image size="80" resid="wizdom.icon_32x32" /> </Icon> <Action xsi:type="ShowTaskpane"> <TaskpaneId>ButtonId1</TaskpaneId> <SourceLocation resid="wizdom.Taskpane.Url" /> </Action> </Control> <!-- 如果需要更多垂直排列的按钮,直接在这里继续添加<Control>节点即可 --> </Items> </Control> </Group> </CustomTab> </ExtensionPoint>
关键修改说明:
- 用
Menu类型的Control替代了原来直接放在Group里的Button,点击这个Menu按钮就会展开垂直排列的子按钮列表 - 在Menu内部新增了
<Items>节点,所有需要垂直排列的Button都要放在这个节点下,它们会自动垂直排列 - 如果后续要添加更多垂直按钮,只需要在
<Items>里继续添加新的Button控件就行
这样修改后,你的功能区按钮就会变成垂直排列的样式啦。
内容的提问来源于stack exchange,提问作者Haris Jamil
相关产品推荐
相关产品推荐

