IRibbonUI.Invalidate 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使功能区用户界面所有控件的缓存值失效。
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。