ServiceCreatorCallback Делегат

Определение

Предоставляет механизм обратного вызова, с помощью которого выполняется создание экземпляра службы по запросу.Provides a callback mechanism that can create an instance of a service on demand.

public delegate System::Object ^ ServiceCreatorCallback(IServiceContainer ^ container, Type ^ serviceType);
[System.Runtime.InteropServices.ComVisible(true)]
public delegate object ServiceCreatorCallback(IServiceContainer container, Type serviceType);
type ServiceCreatorCallback = delegate of IServiceContainer * Type -> obj
Public Delegate Function ServiceCreatorCallback(container As IServiceContainer, serviceType As Type) As Object 

Параметры

container
IServiceContainer

Контейнер служб, выдающий запрос на создание службы.The service container that requested the creation of the service.

serviceType
Type

Тип создаваемой службы.The type of service to create.

Возвращаемое значение

Object

Служба, заданная параметром serviceType, либо значение null, если не удалось выполнить создание службы.The service specified by serviceType, or null if the service could not be created.

Наследование
ServiceCreatorCallback
Атрибуты

Примеры

В следующем примере кода показано, как опубликовать службу с помощью функции обратного вызова.The following code example shows how to publish a service using a callback function.

// The following code shows how to publish a service using a callback function.
// Creates a service creator callback.
ServiceCreatorCallback^ callback1 =
   gcnew ServiceCreatorCallback( this, &Sample::myCallBackMethod );

// Adds the service using its type and the service creator callback.
serviceContainer->AddService( myService::typeid, callback1 );
// The following code shows how to publish a service using a callback function.

// Creates a service creator callback.
ServiceCreatorCallback callback1 = 
new ServiceCreatorCallback(myCallBackMethod);

// Adds the service using its type and the service creator callback.
serviceContainer.AddService(typeof(myService), callback1);
' The following code shows how to publish a service using a callback function.

' Creates a service creator callback.
Dim callback1 As New ServiceCreatorCallback _
(AddressOf myCallBackMethod)
       
' Adds the service using its type and the service creator.
serviceContainer.AddService(GetType(myService), callback1)

Комментарии

ServiceCreatorCallbackпредоставляет механизм для публикации служб, которые можно запросить при необходимости, вместо того, чтобы служба создавалась немедленно при загрузке конструктора.ServiceCreatorCallback provides a mechanism to publish services that you can request to have created when needed, rather than the service being created immediately when the designer loads. Функцию обратного вызова можно использовать, если служба не является обязательной и не может использоваться.You can use a callback function if the service is not essential and may not be used. Служба, опубликованная с помощью ServiceCreatorCallback , не использует столько дополнительных ресурсов, сколько не запрашивается и не создается.A service published by using a ServiceCreatorCallback does not use as many additional resources if it is not requested and created. Чтобы использовать функцию обратного вызова для публикации службы, передайте ServiceCreatorCallback AddService в метод объекта IServiceContainer.To use a callback function to publish your service, pass a ServiceCreatorCallback to the AddService method of an IServiceContainer.

Методы расширения

GetMethodInfo(Delegate)

Получает объект, представляющий метод, представленный указанным делегатом.Gets an object that represents the method represented by the specified delegate.

Применяется к

Дополнительно