IRibbonUI.Invalidate 方法

定义

使功能区用户界面所有控件的缓存值失效。

public:
 void Invalidate();
public void Invalidate ();
abstract member Invalidate : unit -> unit
Public Sub Invalidate ()

示例

在以下示例中,启动主机应用程序会触发 onLoad 事件过程,该过程随后调用一个过程,该过程创建一个表示功能区 UI 的对象。 接下来,将定义一个回调过程,该过程将使 UI 上的所有控件失效,并随后刷新 UI。

下面是 Office 用于加载自定义功能区的 XML 标记:

<customUI … onLoad=”MyAddInInitialize” …>

下面是 onLoad 事件的回调方法:

Dim MyRibbon As IRibbonUI
Sub MyAddInInitialize(Ribbon As IRibbonUI)
    Set MyRibbon = Ribbon
End Sub

Sub myFunction()
    ‘ Invalidates the caches of all of this add-in’s controls 
    MyRibbon.Invalidate()            
End Sub

注解

可以使用 COM 加载项中的回调过程自定义功能区 UI。对于外接程序实现的每个回调,将缓存响应。 例如,如果外接程序编写器为按钮实现 getImage 回调过程,则调用函数一次,加载图像,然后如果需要更新映像,则使用缓存映像,而不是召回该过程。 此过程一直保留在原地,直到加载项使用 Invalidate 方法发出缓存值无效的信号,此时,将再次调用回调过程并缓存返回响应。 加载项随后可以通过调用 Refresh 方法强制立即更新 UI。

适用于