次の方法で共有


WorkflowDesignerLoader.Dispose メソッド

定義

WorkflowDesignerLoader によって使用されているすべてのリソースを解放します。

public:
 override void Dispose();
public override void Dispose ();
override this.Dispose : unit -> unit
Public Overrides Sub Dispose ()

Dispose メソッドの実装例を次に示します。 この実装では、アプリケーションを閉じる準備として、LoaderHost オブジェクトに追加されたさまざまなサービスが削除されます。 この例は、追跡プロファイル デザイナーの SDK サンプルです。 詳細については、「 追跡プロファイル デザイナーのサンプル」を参照してください。

public override void Dispose()
{
    try
    {
        IDesignerLoaderHost host = LoaderHost;
        if (host != null)
        {
            host.RemoveService(typeof(IIdentifierCreationService));
            host.RemoveService(typeof(IMenuCommandService));
            host.RemoveService(typeof(IToolboxService));
            host.RemoveService(typeof(ITypeProvider), true);
            host.RemoveService(typeof(IWorkflowCompilerOptionsService));
            host.RemoveService(typeof(IEventBindingService));
        }
    }
    finally
    {
        base.Dispose();
    }
}
Public Overrides Sub Dispose()
    Try
        Dim host As IDesignerLoaderHost = LoaderHost
        If host IsNot Nothing Then
            host.RemoveService(GetType(IIdentifierCreationService))
            host.RemoveService(GetType(IMenuCommandService))
            host.RemoveService(GetType(IToolboxService))
            host.RemoveService(GetType(ITypeProvider), True)
            host.RemoveService(GetType(IWorkflowCompilerOptionsService))
            host.RemoveService(GetType(IEventBindingService))
        End If
    Finally
        MyBase.Dispose()
    End Try
End Sub

注釈

Dispose はデザイナー ホストによって使用されたすべてのサービスを解放しますが、デザイナー ローダーの保留状態の変更は書き込みません。 すべてのリソースを解放する前に保留状態の変更を保存する場合は、Flush を呼び出す前に Dispose を呼び出します。

適用対象