Globals, interface
L'objet Globals est un cache qui permet de stocker les données pour la durée de chaque session dans l'environnement Visual Studio, ainsi qu'entre les sessions à l'aide de la propriété VariablePersists.
Espace de noms : EnvDTE
Assembly : EnvDTE (dans EnvDTE.dll)
Syntaxe
'Déclaration
<GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")> _
Public Interface Globals
[GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")]
public interface Globals
[GuidAttribute(L"E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")]
public interface class Globals
[<GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")>]
type Globals = interface end
public interface Globals
Le type Globals expose les membres suivants.
Propriétés
Nom | Description | |
---|---|---|
DTE | Obtient l'objet d'extensibilité de niveau supérieur. | |
Parent | Obtient l'objet parent immédiat d'un objet Globals. | |
VariableExists | Retourne une valeur indiquant si la variable spécifiée existe. | |
VariableNames | Obtient une liste de tous les noms de variables globales actuelles. | |
VariablePersists | La propriété VariablePersists s'applique à plusieurs types d'objets Globals.Pour l'objet DTE.Globals, elle obtient ou définit une valeur indiquant si la variable est conservée par l'environnement et disponible entre les sessions de l'environnement.Pour l'objet Solution.Globals, elle obtient ou définit une valeur indiquant si la variable est conservée par l'environnement et disponible entre les sessions de l'environnement et entre les chargements et les déchargements d'une solution.Pour l'objet Project.Globals, elle obtient ou définit une valeur indiquant si la variable est conservée par l'environnement dans le fichier projet. | |
VariableValue | Retourne ou définit la variable avec le nom spécifié. |
Début
Notes
L'objet Globals, par exemple, permet aux programmes d'utiliser des variables globales dont les valeurs persistent entre les exécutions.Il permet également à une commande d'implémenter une valeur par défaut s'il demande à l'utilisateur d'entrer des informations chaque fois qu'il exécute.En outre, il permet de modifier son comportement après avoir été appelé un certain nombre de fois.
Les données sont stockées dans l'objet Globals sous forme de paires nom/valeur variant.Ces paires nom/valeur peuvent éventuellement être stockées sur le disque à l'aide de la propriété VariablePersists pour maintenir leur état (comme une chaîne) entre différentes sessions de Visual Studio.
[!REMARQUE]
Les variables contenant des objets ou SafeArrays ne peuvent pas être enregistrées.Si la valeur peut être enregistrée en tant que chaîne, elle est enregistrée dans son format natif.
Les compléments ou les macros peuvent également utiliser l'objet Globals pour enregistrer les données définies par l'utilisateur qui sont spécifiques à chaque utilisateur entre des sessions Visual Studio.Ils peuvent également utiliser l'objet Globals pour enregistrer et récupérer les données à partir d'un fichier solution (.sln).
Utilisez la propriété VariableValue pour enregistrer ou lire les valeurs enregistrées avec l'objet Globals.
[!REMARQUE]
Les noms de chaînes VariableValue ne peuvent pas contenir les caractères suivants : espace, signe deux-points (:) ou point (.)Si un nom contient un de ces caractères, le message d'erreur « La valeur n'est pas comprise dans la plage attendue » s'affiche.
Exemples
Sub OnAddinLoaded(ByVal dte As DTE)
' Count the number of times an add-in is loaded
' and store the value in the solution.
Dim globals As Globals
globals = dte.Solution.Globals
If globals.VariableExists("AddinLoadCounter") Then
' The counter has already been set, so increment it.
Dim int32 As System.Int32
int32 = System.Int32.Parse(CStr(globals("AddinLoadCounter")))
int32 += 1
globals("AddinLoadCounter") = int32.ToString()
Else
' Counter has never been set, so create and initialize it.
globals("AddinLoadCounter") = 1.ToString()
globals.VariablePersists("AddinLoadCounter") = True
End If
MsgBox("This add-in has been loaded: " & _
globals.VariableValue("AddinLoadCounter") & " times.")
End Sub
void OnAddinLoaded(_DTE applicationObject)
{
// Count the number of times an add-in is loaded
// and store the value in the solution.
Globals globals;
globals = applicationObject.Solution.Globals;
if(globals.get_VariableExists("AddinLoadCounter"))
{
// The counter has already been set, so increment it.
System.Int32 int32;
int32 = System.Int32.Parse((string)
globals["AddinLoadCounter"]);
int32++;
globals["AddinLoadCounter"] = int32.ToString();
}
else
{
// Counter has never been set, so create and initialize it.
globals["AddinLoadCounter"] = 1.ToString();
globals.set_VariablePersists("AddinLoadCounter", true);
}
System.Windows.Forms.MessageBox.Show("This add-in has been loaded:
" + globals.VariableValue["AddinLoadCounter"] + " times.");
}
Voir aussi
Référence
Autres ressources
Persistance d'informations dans des projets et des solutions