Condividi tramite


TypeDescriptor.AddProvider Metodo

Definizione

Aggiunge un provider del descrittore di tipo all'elenco di provider per questo descrittore di tipo.

Overload

AddProvider(TypeDescriptionProvider, Object)

Aggiunge un provider di descrizione del tipo per una singola istanza di un componente.

AddProvider(TypeDescriptionProvider, Type)

Aggiunge un provider di descrizioni di tipo per una classe Component.

AddProvider(TypeDescriptionProvider, Object)

Source:
TypeDescriptor.cs
Source:
TypeDescriptor.cs
Source:
TypeDescriptor.cs

Aggiunge un provider di descrizione del tipo per una singola istanza di un componente.

public:
 static void AddProvider(System::ComponentModel::TypeDescriptionProvider ^ provider, System::Object ^ instance);
public static void AddProvider (System.ComponentModel.TypeDescriptionProvider provider, object instance);
static member AddProvider : System.ComponentModel.TypeDescriptionProvider * obj -> unit
Public Shared Sub AddProvider (provider As TypeDescriptionProvider, instance As Object)

Parametri

provider
TypeDescriptionProvider

Oggetto TypeDescriptionProvider da aggiungere.

instance
Object

Istanza del componente di destinazione.

Eccezioni

Uno o entrambi i parametri sono null.

Commenti

Il AddProvider(TypeDescriptionProvider, Object) metodo aggiunge un provider di descrizione del tipo che fornisce informazioni sul tipo per una singola istanza di un componente. Se un provider viene aggiunto da questo metodo, il metodo del CreateInstance provider non verrà chiamato perché l'istanza esiste già.

Questo metodo non mantiene un riferimento rigido al componente, pertanto non impedisce il completamento del componente.

È possibile aggiungere più provider di descrizione del tipo per lo stesso tipo o oggetto. In questo caso, il primo provider di descrizione del tipo rilevato che fornisce informazioni sul tipo verrà utilizzato esclusivamente. Poiché i provider di informazioni sui tipi vengono archiviati in uno stack, l'ultimo provider aggiunto sarà il primo sottoposto a query. Questo comportamento consente l'uso dei AddProvider(TypeDescriptionProvider, Object) metodi e RemoveProvider per eseguire il push e il pop type description provider in base alle esigenze per scenari specifici.

In caso di esito positivo, questo metodo chiama il Refresh(Object) metodo sul instance parametro .

Nota

Le due versioni di questo metodo producono risultati con ambiti diversi. Il AddProvider metodo che accetta un Object parametro influisce solo sulla singola istanza del componente specificato. Al contrario, l'altro overload, che accetta un Type parametro, influisce su tutte le istanze del componente descritto da tale tipo.

Usare il AddProviderTransparent(TypeDescriptionProvider, Object) metodo se è necessario chiamare da codice parzialmente attendibile.

Vedi anche

Si applica a

AddProvider(TypeDescriptionProvider, Type)

Source:
TypeDescriptor.cs
Source:
TypeDescriptor.cs
Source:
TypeDescriptor.cs

Aggiunge un provider di descrizioni di tipo per una classe Component.

public:
 static void AddProvider(System::ComponentModel::TypeDescriptionProvider ^ provider, Type ^ type);
public static void AddProvider (System.ComponentModel.TypeDescriptionProvider provider, Type type);
static member AddProvider : System.ComponentModel.TypeDescriptionProvider * Type -> unit
Public Shared Sub AddProvider (provider As TypeDescriptionProvider, type As Type)

Parametri

provider
TypeDescriptionProvider

Oggetto TypeDescriptionProvider da aggiungere.

type
Type

Oggetto Type del componente di destinazione.

Eccezioni

Uno o entrambi i parametri sono null.

Commenti

Il AddProvider(TypeDescriptionProvider, Type) metodo aggiunge un provider di descrizioni dei tipi che fornisce informazioni sul tipo per la classe specificata, le classi derivate e tutte le istanze di questi tipi.

Nota

Il type parametro può essere qualsiasi tipo, inclusa un'interfaccia. Ad esempio, per fornire informazioni personalizzate sul tipo e sull'istanza per tutti i componenti, è necessario specificare typeof(IComponent). typeof(object) Il passaggio chiamerà il provider per fornire informazioni sul tipo per tutti i tipi.

Questo metodo non mantiene un riferimento rigido ad alcun oggetto, pertanto non impedisce il completamento degli oggetti.

È possibile aggiungere più provider di descrizione del tipo per lo stesso tipo o oggetto. In questo caso, il primo provider di descrizione del tipo rilevato che fornisce informazioni sul tipo verrà utilizzato esclusivamente. Poiché i provider di informazioni sui tipi vengono archiviati in uno stack, l'ultimo provider aggiunto sarà il primo sottoposto a query. Questo comportamento consente l'uso dei AddProvider(TypeDescriptionProvider, Type) metodi e RemoveProvider per eseguire il push e il pop type description provider in base alle esigenze per scenari specifici.

In caso di esito positivo, questo metodo chiama il Refresh(Type) metodo sul type parametro .

Nota

Le due versioni di questo metodo producono risultati con ambiti diversi. Il AddProvider metodo che accetta un Object parametro influisce solo sulla singola istanza del componente specificato. Al contrario, l'altro overload, che accetta un Type parametro, influisce su tutte le istanze del componente descritto da tale tipo.

Usare il AddProviderTransparent(TypeDescriptionProvider, Type) metodo se è necessario chiamare da codice parzialmente attendibile.

Vedi anche

Si applica a