Ce sujet n'a pas encore été évalué - Évaluez ce sujet

TypeDescriptor, classe

Fournit des informations relatives aux caractéristiques d'un composant telles que ses attributs, ses propriétés et ses événements. Cette classe ne peut pas être héritée.

Espace de noms : System.ComponentModel
Assembly : System (dans system.dll)

public sealed class TypeDescriptor
public final class TypeDescriptor
public final class TypeDescriptor

Le .NET Framework offre deux moyens d'accéder aux métadonnées sur un type : l'API de réflexion fournie dans l'espace de noms System.Reflection, et la classe TypeDescriptor. La réflexion est un mécanisme général disponible pour tous les types, car sa fondation est établie dans la méthode GetType de la classe Object racine. Les informations qu'elle retourne pour un type ne sont pas extensibles, au sens où elles ne peuvent pas être modifiées après la compilation du type cible. Pour plus d'informations, consultez les rubriques dans Réflexion.

En revanche, TypeDescriptor est un mécanisme d'inspection extensible pour les composants, à savoir les classes qui implémentent l'interface IComponent. Contrairement à réflexion, il n'inspecte pas les méthodes. TypeDescriptor peut être étendu dynamiquement par plusieurs services disponibles via le Site du composant cible. Le tableau suivant indique ces services.

Nom du service

Description

IExtenderProvider

Active une autre classe telle que ToolTip pour fournir des propriétés supplémentaires à un composant.

ITypeDescriptorFilterService

Permet à un autre objet de modifier les métadonnées standard qui sont exposées par un composant.

ICustomTypeDescriptor

Active une classe afin de spécifier d'une manière complète et dynamique ses propres métadonnées et remplace le mécanisme d'inspection standard de TypeDescriptor.

L'extensibilité fournie par TypeDescriptor permet à la représentation au moment du design d'un composant de différer de sa représentation à l'exécution, ce qui rend TypeDescriptor utile pour construire l'infrastructure au moment du design.

Toutes les méthodes dans TypeDescriptor sont static. Vous ne pouvez pas créer une instance de cette classe, et cette classe ne peut pas être héritée.

Vous pouvez définir des valeurs de propriétés et d'événements de deux manières : en les spécifiant dans la classe du composant ou en les modifiant au moment du design. Comme vous pouvez définir ces valeurs de deux manières, les méthodes surchargées de TypeDescriptor prennent deux types de paramètres différents : un type de classe ou une instance d'objet.

Si vous souhaitez accéder à des informations sur TypeDescriptor et si vous disposez d'une instance de l'objet, utilisez la méthode qui appelle un composant. N'utilisez la méthode qui appelle le type de la classe que si vous ne possédez pas d'instance de l'objet.

Les propriétés et les événements sont mis en cache par TypeDescriptor pour améliorer la vitesse. Généralement, ils sont constants pendant toute la durée de vie d'un objet. Toutefois, les fournisseurs et les concepteurs d'extendeurs peuvent modifier le jeu de propriétés sur un objet. Si c'est le cas, la méthode Refresh doit être appelée pour mettre à jour le cache.

RemarqueRemarque

L'attribut HostProtectionAttribute appliqué à cette classe a la valeur de propriété Resources suivante : SharedState. HostProtectionAttribute n'affecte pas les applications bureautiques (qui sont généralement démarrées en double-cliquant sur une icône, en tapant une commande ou en entrant une URL dans un navigateur). Pour plus d'informations, consultez la classe HostProtectionAttribute ou Attributs de programmation et de protection des hôtes SQL Server.

System.Object
  System.ComponentModel.TypeDescriptor
Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0

.NET Compact Framework

Prise en charge dans : 2.0, 1.0
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.