ServiceContainer.AddService 方法

定义

将指定的服务添加到服务容器中。

重载

AddService(Type, ServiceCreatorCallback)

将指定的服务添加到服务容器中。

AddService(Type, Object)

将指定的服务添加到服务容器中。

AddService(Type, ServiceCreatorCallback, Boolean)

将指定的服务添加到服务容器中。

AddService(Type, Object, Boolean)

将指定的服务添加到服务容器中。

AddService(Type, ServiceCreatorCallback)

Source:
ServiceContainer.cs
Source:
ServiceContainer.cs
Source:
ServiceContainer.cs

将指定的服务添加到服务容器中。

C#
public void AddService (Type serviceType, System.ComponentModel.Design.ServiceCreatorCallback callback);

参数

serviceType
Type

要添加的服务的类型。

callback
ServiceCreatorCallback

可创建该服务的回调对象。 它允许将服务声明为可用,但是会将对象的创建延迟到请求该服务之后。

实现

例外

serviceTypecallbacknull

容器中已存在类型为 serviceType 的服务。

示例

以下示例演示如何将服务添加到 ServiceContainer

C#
m_MyServiceContainer.AddService(typeof(Control),
                new ServiceCreatorCallback(this.CreateNewControl));

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

AddService(Type, Object)

Source:
ServiceContainer.cs
Source:
ServiceContainer.cs
Source:
ServiceContainer.cs

将指定的服务添加到服务容器中。

C#
public void AddService (Type serviceType, object serviceInstance);

参数

serviceType
Type

要添加的服务的类型。

serviceInstance
Object

要添加的服务的实例。 此对象必须实现 serviceType 参数所指示的类型或从其继承。

实现

例外

serviceTypeserviceInstancenull

容器中已存在类型为 serviceType 的服务。

示例

以下示例演示如何将服务添加到 ServiceContainer

C#
m_MyServiceContainer.AddService(typeof(Control), sender);

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

AddService(Type, ServiceCreatorCallback, Boolean)

Source:
ServiceContainer.cs
Source:
ServiceContainer.cs
Source:
ServiceContainer.cs

将指定的服务添加到服务容器中。

C#
public virtual void AddService (Type serviceType, System.ComponentModel.Design.ServiceCreatorCallback callback, bool promote);
C#
public void AddService (Type serviceType, System.ComponentModel.Design.ServiceCreatorCallback callback, bool promote);

参数

serviceType
Type

要添加的服务的类型。

callback
ServiceCreatorCallback

可创建该服务的回调对象。 它允许将服务声明为可用,但是会将对象的创建延迟到请求该服务之后。

promote
Boolean

如果应将此服务添加到任何父服务容器,则为 true;否则为 false

实现

例外

serviceTypecallbacknull

容器中已存在类型为 serviceType 的服务。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

AddService(Type, Object, Boolean)

Source:
ServiceContainer.cs
Source:
ServiceContainer.cs
Source:
ServiceContainer.cs

将指定的服务添加到服务容器中。

C#
public virtual void AddService (Type serviceType, object serviceInstance, bool promote);
C#
public void AddService (Type serviceType, object serviceInstance, bool promote);

参数

serviceType
Type

要添加的服务的类型。

serviceInstance
Object

要添加的服务类型的实例。 此对象必须实现 serviceType 参数所指示的类型或从其继承。

promote
Boolean

如果应将此服务添加到任何父服务容器,则为 true;否则为 false

实现

例外

serviceTypeserviceInstancenull

容器中已存在类型为 serviceType 的服务。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1