IRibbonUI.InvalidateControl(String) 方法

定义

使功能区用户界面上单个控件的缓存值失效。

public:
 void InvalidateControl(System::String ^ ControlID);
public void InvalidateControl (string ControlID);
abstract member InvalidateControl : string -> unit
Public Sub InvalidateControl (ControlID As String)

参数

ControlID
String

指定将失效的控件的 ID。

示例

在以下示例中,启动主机应用程序会触发 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 cache of a single control 
    MyRibbon.InvalidateControl(“control5”)            
End Sub

注解

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

适用于