FeatureManager 类
更新:2007 年 11 月
管理功能提供程序和功能连接器。
命名空间: Microsoft.Windows.Design.Features
程序集: Microsoft.Windows.Design.Extensibility(在 Microsoft.Windows.Design.Extensibility.dll 中)
语法
声明
Public Class FeatureManager _
Implements IDisposable
用法
Dim instance As FeatureManager
public class FeatureManager : IDisposable
public ref class FeatureManager : IDisposable
public class FeatureManager implements IDisposable
备注
使用 FeatureManager 类创建功能提供程序以及查询正在运行的和挂起的功能连接器。
如果某个功能连接器需要实例化,但它订阅了尚不存在的服务或上下文项,则该连接器类型被放入挂起列表,而订阅被添加到编辑上下文中。当相应的服务和项可用时,该功能连接器将被实例化。
将对象添加到编辑模型中时,该编辑模型应对功能管理器调用 InitializeFeatures 方法,该方法将检查功能属性的对象。它将这些属性放在 FeatureConnector<TFeatureProviderType> 属性之后,并确保所有唯一连接器均已实例化。
示例
下面的示例代码演示如何使用 FeatureManager 类访问正在运行的和挂起的连接器。有关完整的代码列表,请参见如何:创建自定义功能连接器。
Public Sub Initialize(ByVal manager As FeatureManager)
featManager = manager
Bind()
End Sub
...
' Binds the activatedFeatures and pendingFeatures controls
' the FeatureManager's RunningConnectors and PendingConnectors\
' properties.
Private Sub Bind()
activatedFeatures.Items.Clear()
pendingFeatures.Items.Clear()
Dim info As FeatureConnectorInformation
For Each info In featManager.RunningConnectors
activatedFeatures.Items.Add(info)
Next info
For Each info In featManager.PendingConnectors
pendingFeatures.Items.Add(info)
Next info
End Sub
public void Initialize(FeatureManager manager)
{
featManager = manager;
Bind();
}
...
// Binds the activatedFeatures and pendingFeatures controls
// the FeatureManager's RunningConnectors and PendingConnectors\
// properties.
private void Bind()
{
activatedFeatures.Items.Clear();
pendingFeatures.Items.Clear();
foreach (FeatureConnectorInformation info in
featManager.RunningConnectors)
{
activatedFeatures.Items.Add(info);
}
foreach (FeatureConnectorInformation info in
featManager.PendingConnectors)
{
pendingFeatures.Items.Add(info);
}
}
继承层次结构
System.Object
Microsoft.Windows.Design.Features.FeatureManager
线程安全
此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
另请参见
参考
Microsoft.Windows.Design.Features 命名空间
FeatureConnector<TFeatureProviderType>