如何为功能区下拉列表添加时间

时间:2019-03-13 13:00:32

标签: c# add-in ribbonx

Excel项目的加载项。 功能区是基于XML的。 我向功能区添加了一个下拉列表:

<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
  <ribbon>
    <tabs>
      <tab label="MyTab" id="tab0">
        <group id="MyGroup"                         
          <dropDown id="MyItems" label="My Items"/>
        </group>        
      </tab>
    </tabs>
  </ribbon>
</customUI>

如何在下拉菜单中填写项目?

谢谢

1 个答案:

答案 0 :(得分:1)

有两种方法可以在功能区上定义下拉控件:

1。静态。例如:

<dropDown id="ddStatic" label="Static dropdown"> 
    <item id="ddItem1" label="Item 1" imageMso="HappyFace"/> 
    <item id="ddItem2" label="Item 2" imageMso="Info"/> 
</dropDown> 

2。动态。。您需要指定功能区回调,例如,getItemCount应该类似于以下内容:

C#: int GetItemCount(IRibbonControl control)

VBA: Sub GetItemCount(control As IRibbonControl, ByRef count)

C++: HRESULT GetItemCount([in] IRibbonControl *pControl, [out, retval] long *count)

Visual Basic: Function GetItemCount(control As IRibbonControl) As Integer

它确定下拉菜单中将显示多少个项目。

还可能需要实现getItemIDgetItemLabel-在下拉菜单中设置项目的标签,getSelectedItemIndex-返回所选项目的索引,{{1 }},getSelectedItemID-在下拉菜单中选择一项时触发。您可能会在MSDN的以下系列文章中找到这些回调: