次の方法で共有


ServiceManager クラス

EditingContext に関連付けられている動作を表します。

継承階層

System.Object
  Microsoft.Windows.Design.ServiceManager

名前空間:  Microsoft.Windows.Design
アセンブリ:  Microsoft.Windows.Design.Extensibility (Microsoft.Windows.Design.Extensibility.dll 内)

構文

'宣言
Public MustInherit Class ServiceManager _
    Implements IServiceProvider, IEnumerable(Of Type),  _
    IEnumerable
public abstract class ServiceManager : IServiceProvider, 
    IEnumerable<Type>, IEnumerable
public ref class ServiceManager abstract : IServiceProvider, 
    IEnumerable<Type^>, IEnumerable
[<AbstractClass>]
type ServiceManager =  
    class
        interface IServiceProvider
        interface IEnumerable<Type>
        interface IEnumerable
    end
public abstract class ServiceManager implements IServiceProvider, IEnumerable<Type>, IEnumerable

ServiceManager 型で公開されるメンバーは以下のとおりです。

コンストラクター

  名前 説明
プロテクト メソッド ServiceManager ServiceManager クラスの新しいインスタンスを初期化します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド Contains(Type) 派生クラスでオーバーライドされた場合、ServiceManager に指定された型のサービスが格納されているかどうかを確認します。
パブリック メソッド Contains<TServiceType>() ServiceManager に指定された型のサービスが格納されているかどうかを確認します。
パブリック メソッド Equals 指定した Object が、現在の Object と等しいかどうかを判断します。 (Object から継承されます。)
プロテクト メソッド Finalize オブジェクトがガベージ コレクションにより収集される前に、そのオブジェクトがリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
パブリック メソッド GetEnumerator 派生クラスでオーバーライドされた場合、この ServiceManager の発行されたサービスの列挙子を取得します。
パブリック メソッド GetHashCode 特定の型のハッシュ関数として機能します。 (Object から継承されます。)
パブリック メソッド GetRequiredService<TServiceType> 指定された型のサービスのインスタンスを取得します。
パブリック メソッド GetService(Type) 派生クラスでオーバーライドされた場合、指定された型のサービスのインスタンスを取得します。
パブリック メソッド GetService<TServiceType>() 指定されたジェネリック型のサービスのインスタンスを取得します。
プロテクト メソッド静的メンバー GetTarget デリゲート用のターゲット オブジェクトを取得するヘルパー メソッド。
パブリック メソッド GetType 現在のインスタンスの Type を取得します。 (Object から継承されます。)
プロテクト メソッド MemberwiseClone 現在の Object の簡易コピーを作成します。 (Object から継承されます。)
パブリック メソッド Publish(Type, PublishServiceCallback) 派生クラスでオーバーライドされた場合、指定されたメソッドで表される指定された型のサービスを発行します。
パブリック メソッド Publish(Type, Object) 派生クラスでオーバーライドされた場合、指定された型の指定されたサービス インスタンスを発行します。
パブリック メソッド Publish<TServiceType>(TServiceType) 指定された型の指定されたサービス インスタンスを発行します。
パブリック メソッド Publish<TServiceType>(PublishServiceCallback<TServiceType>) 指定されたメソッドで表される指定された型のサービスを発行します。
プロテクト メソッド静的メンバー RemoveCallback デリゲートからコールバック メソッドを削除します。
パブリック メソッド Subscribe(Type, SubscribeServiceCallback) 派生クラスでオーバーライドされた場合、指定された型のサービスが使用できるときに、指定したメソッドが呼び出されるように要求します。
パブリック メソッド Subscribe<TServiceType>(SubscribeServiceCallback<TServiceType>) 指定された型のサービスが使用できるときに、指定したメソッドが呼び出されるように要求します。
パブリック メソッド ToString 現在のオブジェクトを表す文字列を返します。 (Object から継承されます。)
パブリック メソッド Unsubscribe(Type, SubscribeServiceCallback) 派生クラスでオーバーライドされた場合、指定された型のサービスが使用できるときに、指定したメソッドが呼び出されないように要求します。
パブリック メソッド Unsubscribe<TServiceType>(SubscribeServiceCallback<TServiceType>) 指定された型のサービスが使用できるときに、指定したメソッドが呼び出されないように要求します。

このページのトップへ

明示的インターフェイスの実装

  名前 説明
明示的なインターフェイス実装プライベート メソッド IEnumerable.GetEnumerator インフラストラクチャ。 このメンバーの説明については、GetEnumerator のトピックを参照してください。

このページのトップへ

解説

次の 2 つの状態にアクセスできるようにする EditingContext クラス。

  • データ (ContextItem)

  • 動作サービス (ServiceManager)

動作サービスには、ServiceManager のインスタンスを返す Services プロパティを介してアクセスします。

ServiceManager は抽象クラスです。 EditingContext から派生させ、CreateServiceManager をオーバーライドすることで、独自の実装を行うことができます。

サービスは、EditingContext で作成されると常に表示されます。 サービスは EditingContext から削除できません。

サービスには一貫したインスタンス値があるため、いつでもキャッシュできます。

コードで ServiceManager を使用して新しいサービスを発行し、特定のサービスが使用できるときにコールバックをサブスクライブできます。

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。 インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

参照

参照

Microsoft.Windows.Design 名前空間

その他の技術情報

WPF デザイナーの機能拡張