自定义ribbonx XML onAction使其无法加载

时间:2017-10-02 06:52:06

标签: excel ribbonx

我有一个xlam文件,我想添加一个自定义的ribbonX按钮。

我使用自定义UI编辑器和这个xml它“工作”。

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon>
        <tabs>
            <tab id="Tab1" label="LeaveReport">
                <group id="Group1" label="Formatering">
                    <button id="Button1" imageMso="ChartSwitchRowColumn" size="large"/ >
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>

但是,如果我添加onaction以使按钮执行某些操作,它根本不会加载。这意味着标签和按钮根本不存在。

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon>
        <tabs>
            <tab id="Tab1" label="LeaveReport">
                <group id="Group1" label="Formatering">
                    <button id="Button1" imageMso="ChartSwitchRowColumn" size="large"/ onAction="formatera_for_pivot_tabell()"/ >
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>

我也试过没有() 我在这做错了什么?没有动作的按钮是没用的: - /

1 个答案:

答案 0 :(得分:0)

要使自定义功能区UI正常工作,您必须:

  1. 在功能区XML中指定功能区回调,不带括号。

    onAction="formatera_for_pivot_tabell"
    
  2. 应该更新XML名称空间,如下所示:

    xmlns="http://schemas.microsoft.com/office/2009/07/customui"

  3. 在代码隐藏文件中定义回调。

    • C#:void OnAction(IRibbonControl control)
    • VBA:Sub OnAction(control As IRibbonControl)
    • C ++:HRESULT OnAction([in] IRibbonControl *pControl)
    • Visual Basic:Sub OnAction(control As IRibbonControl)
  4. 它应具有以下文章中指定的签名: