Поделиться через


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.

В начало страницы

Заметки

Класс EditingContext предоставляет доступ к двум частям состояния:

  • Данные (ContextItem)

  • Службы поведения (ServiceManager)

Доступ к службам поведения предоставляется с помощью свойства Services, которое возвращает экземпляр ServiceManager.

Класс ServiceManager является абстрактным. Можно создать собственную реализацию путем наследования от EditingContext и переопределения CreateServiceManager.

После создания службы в EditingContext, она всегда присутствует. Нельзя удалить службу из EditingContext.

Службы имеют согласованные значения экземпляра, поэтому их всегда можно кэшировать.

В коде может использоваться ServiceManager для публикации новых служб и подписки на функцию обратного вызова, если доступна определенная служба.

Потокобезопасность

Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.

См. также

Ссылки

Microsoft.Windows.Design - пространство имен

Другие ресурсы

Расширяемость среды конструктора WPF