我想在Microsoft Office中创建一个功能区按钮来重现行为,例如“文本填充”按钮。它分为两个区域,左侧(红色)将执行默认/最后一个操作,右侧(蓝色)提供其他功能。
我最接近的是splitButton
使用button
和menu
。但是这里有一个带有文本的大按钮用于默认操作,只有一个带有三角形的小区域用于访问下拉菜单。以下是功能区代码和生成的按钮:
<splitButton id="SplitButton1" size="normal" >
<button id="MenuButton1" imageMso="TextFillColorPicker" label="Text Fill" />
<menu id="Menu1" label="Label1" itemSize="normal" showLabel="true">
<button id="MenuButton2" label="Label2" />
</menu>
</splitButton>
出于可用性原因,我希望将(视觉)焦点保持在下拉部分,如图所示。任何想法怎么做?
答案 0 :(得分:0)
声明splitButton时,将size属性设置为“small”
答案 1 :(得分:0)
我认为ControlSize proeprty只有2个选项,包括Regular或Large。因此,只需使用常规尺寸,然后将图像添加到分割按钮即可。
有关详细信息,请参阅此API:
http://msdn.microsoft.com/en-us/library/microsoft.office.tools.ribbon.ribbonsplitbutton.controlsize
带有Ribbon XML的自定义UI的示例
<splitButton id="splitButton">
<button id="splitButton__btn" imageMso="AlignLeft" label="SplitButton" onAction="splitButton_Click" />
<menu id="splitButton__mnu">
<button id="btnAlignLeft" imageMso="AlignLeft" onAction="btnAlign_Click" label="Left" />
</menu>
</splitButton>
MSDN上的功能区XML
http://msdn.microsoft.com/en-us/library/aa942866.aspx
http://msdn.microsoft.com/en-us/library/gg327872
也许您可能想尝试<MenuSection>
代码
<MenuSection
DisplayMode=["Default" | "Small" | "Medium" | "Large" | "Text" | "Menu" | "Menu16" | "Menu32" | "Thin"]
Id="String"
MaxHeight="String"
Scrollable="true"
Sequence="Integer"
Title="String">
[<Controls /> | <Gallery />]
</MenuSection>
似乎您可以定义不同类型的显示模式。
答案 2 :(得分:0)
由于自定义限制,我认为不可能做你想做的事情......但你可以尝试定义一个框而不是splitButton:
<box id="BoxSplit" boxStyle="horizontal">
<button id="MenuButton1" imageMso="TextFillColorPicker" />
<menu id="Menu1" label="Text Fill" itemSize="normal" showLabel="true">
<button id="MenuButton2" label="Label2" />
</menu>
</box>
这会给您以下结果:
如您所见,问题是现在菜单和按钮没有一起突出显示。我希望这对你来说是可以接受的......
答案 3 :(得分:0)
如果您需要准确再现功能区中的原始按钮,则可以使用以下代码:
<control idMso="FontColorPicker" imageMso="FontColorPicker"/>
(我环顾四周找到了这个,我找不到任何信息,所以我发现它可能对某人有用了一天)