ServiceCreatorCallback 대리자
필요할 때 서비스의 인스턴스를 만들 수 있는 콜백 메커니즘을 제공합니다.
네임스페이스: System.ComponentModel.Design
어셈블리: System(system.dll)
구문
‘선언
<ComVisibleAttribute(True)> _
Public Delegate Function ServiceCreatorCallback ( _
container As IServiceContainer, _
serviceType As Type _
) As Object
‘사용 방법
Dim instance As New ServiceCreatorCallback(AddressOf HandlerMethod)
[ComVisibleAttribute(true)]
public delegate Object ServiceCreatorCallback (
IServiceContainer container,
Type serviceType
)
[ComVisibleAttribute(true)]
public delegate Object^ ServiceCreatorCallback (
IServiceContainer^ container,
Type^ serviceType
)
/** @delegate */
/** @attribute ComVisibleAttribute(true) */
public delegate Object ServiceCreatorCallback (
IServiceContainer container,
Type serviceType
)
JScript에서는 대리자를 사용할 수 있지만 새로 선언할 수는 없습니다.
매개 변수
- container
서비스 만들기를 요청한 서비스 컨테이너입니다.
- serviceType
만들 서비스의 형식입니다.
반환 값
serviceType로 지정된 서비스이거나, 해당 서비스를 만들 수 없는 경우 Null 참조(Visual Basic의 경우 Nothing)입니다.
설명
ServiceCreatorCallback에서는 디자이너가 로드할 때 바로 만들어지는 서비스 대신 필요할 때 만들도록 요청할 수 있는 서비스를 게시하는 메커니즘을 제공합니다. 서비스가 필수가 아니고 사용하지 않을 수 있으면 콜백 기능을 사용할 수 있습니다. ServiceCreatorCallback을 사용하여 게시된 서비스는 서비스를 요청하지 않고 만든 경우 만큼 추가 리소스를 사용하지 않습니다. 서비스를 게시하기 위해 콜백 기능을 사용하려면 IServiceContainer의 AddService 메서드에 ServiceCreatorCallback을 전달합니다.
참고
이 클래스에 적용되는 HostProtectionAttribute 특성의 Resources 속성 값은 SharedState입니다. HostProtectionAttribute는 대개 아이콘을 두 번 클릭하거나, 명령을 입력하거나, 브라우저에서 URL을 입력하여 시작되는 데스크톱 응용 프로그램에 영향을 미치지 않습니다. 자세한 내용은 HostProtectionAttribute 클래스나 SQL Server 프로그래밍 및 호스트 보호 특성을 참조하십시오.
예제
다음 코드 예제에서는 콜백 함수를 사용하여 서비스를 게시하는 방법을 보여 줍니다.
' 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)
// 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.
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(MyService.class.ToType(), callBack1);
플랫폼
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
2.0, 1.1, 1.0에서 지원
참고 항목
참조
System.ComponentModel.Design 네임스페이스
AddService
IServiceContainer 인터페이스