FeatureManager (Clase)
Administra proveedores de características y conectores de características
Jerarquía de herencia
System.Object
Microsoft.Windows.Design.Features.FeatureManager
Espacio de nombres: Microsoft.Windows.Design.Features
Ensamblado: Microsoft.Windows.Design.Extensibility (en Microsoft.Windows.Design.Extensibility.dll)
Sintaxis
'Declaración
Public Class FeatureManager _
Implements IDisposable
public class FeatureManager : IDisposable
public ref class FeatureManager : IDisposable
type FeatureManager =
class
interface IDisposable
end
public class FeatureManager implements IDisposable
El tipo FeatureManager expone los siguientes miembros.
Constructores
Nombre | Descripción | |
---|---|---|
FeatureManager | Inicializa una nueva instancia de la clase FeatureManager. |
Arriba
Propiedades
Nombre | Descripción | |
---|---|---|
Context | Obtiene el contexto de edición para este administrador de características. | |
MetadataProvider | Obtiene o establece un proveedor del metadatos personalizado que puede proporcionar los metadatos de tipo para este administrador de características. | |
PendingConnectors | Obtiene una enumeración de todos los conectores que no se han activado todavía porque están esperando elementos de contexto o servicios. | |
RunningConnectors | Obtiene una enumeración de todos los conectores que se están ejecutando actualmente. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
CreateFeatureProviders(Type) | Crea y devuelve un conjunto de proveedores de características para el tipo especificado. | |
CreateFeatureProviders(Type, Predicate<Type>) | Crea y devuelve un conjunto de proveedores de características para el tipo especificado. | |
CreateFeatureProviders(Type, Type) | Crea y devuelve un conjunto de proveedores de características que existen para el tipo especificado. | |
CreateFeatureProviders(Type, Type, Predicate<Type>) | Crea y devuelve un conjunto de proveedores de características que existen para el tipo especificado. | |
Dispose() | Libera todos los recursos utilizados por FeatureManager. | |
Dispose(Boolean) | Elimina todos los conectores de características en ejecución. | |
Equals | Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object). | |
Finalize | Finalizador que llama a Dispose. (Invalida a Object.Finalize()). | |
GetCustomAttributes | Enumera los atributos en el tipo especificado. | |
GetHashCode | Actúa como función hash para un tipo concreto. (Se hereda de Object). | |
GetType | Obtiene el objeto Type de la instancia actual. (Se hereda de Object). | |
InitializeFeatures | Inicializa los conectores de características para los proveedores de características definidos en el tipo especificado. | |
MemberwiseClone | Crea una copia superficial del objeto Object actual. (Se hereda de Object). | |
OnFeatureAvailable | Genera el evento FeatureAvailable. | |
ToString | Devuelve una cadena que representa el objeto actual. (Se hereda de Object). |
Arriba
Eventos
Nombre | Descripción | |
---|---|---|
FeatureAvailable | Se produce cuando hay disponible un nuevo tipo de característica. |
Arriba
Métodos de extensión
Nombre | Descripción | |
---|---|---|
CreateFeatureProviders(Type, ModelItem) | Sobrecargado. Crea proveedores de características del tipo y elemento de modelo especificado. (Definido por FeatureExtensions). | |
CreateFeatureProviders(Type, ModelItem, Predicate<Type>) | Sobrecargado. Crea proveedores de características del tipo y elemento de modelo especificado. (Definido por FeatureExtensions). |
Arriba
Comentarios
Utilice la clase FeatureManager para crear proveedores de características y para hacer consultas sobre conectores de características pendientes y en ejecución.
Si un conector de características necesita que se creen instancias, pero se suscribe a los servicios o a los elementos de contexto que no existen todavía, el tipo de conector se coloca en una lista pendiente y las suscripciones se agregan al contexto de edición. Cuando los servicios y elementos adecuados estén disponibles, se crean instancias del conector de características.
Cuando un objeto se agrega a un modelo de edición, el modelo de edición debe llamar al método InitializeFeatures en el administrador de características, que inspecciona el objeto para ver los atributos de características. Sigue a estos atributos hasta los atributos FeatureConnector<TFeatureProviderType> y se asegura de que se han creado instancias de todos los conectores únicos.
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar la clase FeatureManager para obtener acceso a los conectores pendientes y en ejecución. Para obtener una lista de código completa, vea Cómo: Crear un conector de características personalizado.
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);
}
}
Seguridad para subprocesos
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Vea también
Referencia
Microsoft.Windows.Design.Features (Espacio de nombres)
FeatureConnector<TFeatureProviderType>
Otros recursos
Cómo: Crear un conector de características personalizado
Proveedores de características y conectores de características