次の方法で共有


IRibbonUI.Invalidate メソッド

定義

リボン ユーザー インターフェイスのすべてのコントロールに対してキャッシュされた値を無効にします。

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

次の例では、ホスト アプリケーションを起動し、リボン UI を表すオブジェクトを作成するプロシージャを呼び出す、 onLoad イベント プロシージャがトリガーされます。 次に、すべての 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

注釈

リボン UI は、COM アドインのコールバック プロシージャを使用してカスタマイズできます。アドインが実装するコールバックごとに、応答がキャッシュされます。 たとえば、アドイン ライターがボタンの getImage コールバック プロシージャを実装する場合、関数は 1 回呼び出され、イメージが読み込まれてから、イメージを更新する必要がある場合は、プロシージャを呼び出す代わりにキャッシュされたイメージが使用されます。 このプロセスは、キャッシュされた値が Invalidate メソッドを使用して無効であることをアドインが通知するまでインプレースのままです。この時点でコールバック プロシージャが再度呼び出され、戻り値の応答がキャッシュされます。 アドインからは、Refresh メソッドを呼び出すことによって、その場で UI の表示を更新できます。

適用対象