Partager via


GlobalObject, classe

Fournit la classe de base pour les types dont les instances sont accessibles pour chaque projet.

Hiérarchie d'héritage

System.Object
  System.MarshalByRefObject
    Microsoft.VisualStudio.Shell.Design.GlobalType
      Microsoft.VisualStudio.Shell.Design.GlobalObject

Espace de noms :  Microsoft.VisualStudio.Shell.Design
Assembly :  Microsoft.VisualStudio.Shell.Design (dans Microsoft.VisualStudio.Shell.Design.dll)

Syntaxe

'Déclaration
Public MustInherit Class GlobalObject _
    Inherits GlobalType
public abstract class GlobalObject : GlobalType

Le type GlobalObject expose les membres suivants.

Constructeurs

  Nom Description
Méthode protégée GlobalObject Initialise une nouvelle instance de la classe GlobalObject.

Début

Propriétés

  Nom Description
Propriété publique Instance Obtient une instance créée à la demande de l'objet global.
Propriété publique Name Obtient le nom recommandé de l'objet global.
Propriété publique ObjectType Obtient le type d'GlobalType activé. (Hérité de GlobalType.)

Début

Méthodes

  Nom Description
Méthode protégée ClearInstance Efface la propriété d'Instance.
Méthode protégée ClearObjectType Efface la propriété d'ObjectType. (Hérité de GlobalType.)
Méthode protégée CreateInstance Crée une instance mise en cache de l'objet global.
Méthode publique CreateObjRef Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant. (Hérité de MarshalByRefObject.)
Méthode publique Equals S'active si l'objet spécifié est égal à l'objet global actuel. (Substitue GlobalType.Equals(Object).)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique GetHashCode Retourne code de hachage pour l'objet global actuel. (Substitue GlobalType.GetHashCode().)
Méthode publique GetLifetimeService Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject.)
Méthode protégée GetObjectType Retourne le type de ce type global. (Hérité de GlobalType.)
Méthode publique GetSerializer Retourne le sérialiseur activé du type spécifié pour l'objet global.
Méthode publique GetSerializerCore Retourne un sérialiseur du type spécifié pour l'objet global.
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publique InitializeLifetimeService Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject.)
Méthode protégée MemberwiseClone() Crée une copie superficielle de l'objet Object actuel. (Hérité de Object.)
Méthode protégée MemberwiseClone(Boolean) Crée une copie superficielle de l'objet MarshalByRefObject actuel. (Hérité de MarshalByRefObject.)
Méthode protégée OnChanged Déclenche l'événement Changed. (Hérité de GlobalType.)
Méthode protégée OnChanging Déclenche l'événement Changing. (Hérité de GlobalType.)
Méthode protégée OnCreated Déclenche l'événement Created.
Méthode protégée OnRemoved Déclenche l'événement Removed. (Hérité de GlobalType.)
Méthode protégée OnRemoving Déclenche l'événement Removing. (Hérité de GlobalType.)
Méthode protégée PerformChange Réinitialise l'objet global et notifie des utilisateurs aux modifications à son état ou forme. (Substitue GlobalType.PerformChange().)
Méthode protégée PerformRemove Désactive l'objet global et notifie des utilisateurs de sa suppression. (Substitue GlobalType.PerformRemove().)
Méthode publique ToString Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.)

Début

Événements

  Nom Description
Événement public Changed Se produit après que le type global actuel soit modifié. (Hérité de GlobalType.)
Événement public Changing Se produit avant que le type global actuel soit modifié. (Hérité de GlobalType.)
Événement public Created Se produit lorsqu'une instance de l'objet global est créée.
Événement public Removed Se produit après que le type global actuel soit supprimé de l'utilisation. (Hérité de GlobalType.)
Événement public Removing Se produit avant que le type global actuel soit supprimé de l'utilisation. (Hérité de GlobalType.)

Début

Remarques

Un objet global est un objet qui est accessible via d'un projet entier, plutôt que dans une application unique ou un formulaire unique.Par exemple, les fichiers de ressources projet- larges fournis dans une application Windows Forms sont les objets globaux.Les objets globaux ont les caractéristiques suivantes :

  • Ils sont globaux à un projet et unique-sont donc cités.

  • Ils sont accessibles au moyen d'une méthode statique ou d'une propriété sur une classe.

  • Ils sont en général des types personnalisés qui sont automatiquement générés par le système de projet.

  • Ils changent souvent suite à des actions dans d'autres fichiers dans le projet.

  • Ils peuvent être marshalés du domaine par défaut à travers d'autres domaines d'application car la classe d'GlobalObject est dérivée d'System.MarshalByRefObject.Le marshaling requiert que l'instance de l'objet globale soit sérialisable.

Pendant que vous percevez les objets globaux comme globaux, et c'est également comment ils se comportent pendant l'exécution, au moment du design ils sont mentionnés réellement pour chaque générateur.Cela permet aux générateurs pour maintenir leurs propres copies et restent d'isolation.GlobalObjectService interagit avec des instances d'GlobalObject afin de créer ces instances de l'objet globales pour chaque générateur.

Des objets globaux ne sont pas créés directement ; en effet, un appel à la méthode d'GetGlobalObjects de classe d'GlobalObjectService initialise un processus qui crée l'instance de l'objet globale souhaitée.

GlobalObject prend en charge également la création des types globaux.Un type global est un objet mentionné par standard, mais le type pour cet objet provient d'un projet dans la solution ou de code généré.Pour plus d'informations sur les types globaux, voyez la classe de base GlobalType.

Dans la première version de .NET Framework, les types et les instances ont été exposés via le système de références de projet existant.Étant donné que ce système utilise la valeur true, les types compilés qu'il a soufferts d'une baisse des performances, les types de données en double, et la nécessité de redémarrer l'environnement concepteur lorsque des types ont été modifiés.Les types globaux et les types virtuels ont été introduits dans la deuxième version de l'infrastructure managée de package pour résoudre ces problèmes.Un type virtuel active la création dynamique d'un type et des instances de ce type selon une classe de base existante.Les types compilés ordinaires reproduire de types virtuels une fois examinés par l'interface de programmation d'applications (API) de réflexion, mais n'ont pas une implémentation de classe true.Pour plus d'informations sur les types virtuels, voyez la classe d'VirtualTypeBuilder.

Exemples

L'exemple de code suivant montre certains objets globaux.

DataSet cust = Customers.DefaultInstance;
String error = MyAppResources.ErrorString;
Bitmap logo = MyAppResources.ProductLogo;

L'exemple de code suivant montre certains types globaux.

DataSet cust = new CustomerDataSet();

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Voir aussi

Référence

Microsoft.VisualStudio.Shell.Design, espace de noms

GlobalObjectService

GlobalObjectProvider

GlobalObjectProviderFactory

ProvideGlobalObjectProviderAttribute

VirtualTypeBuilder